We're updating the issue view to help you get more done. 

[SPIKE] Twitter and Facebook connector do duplicate postings

Description

For this spike: find out what te best way is to queue the Twitter and Facebook messages. Also queue the item when the article is not published yet and post the article when it is published. According to this is possible in the current queue.

Also find out what the best way is to store / log the postings to Twitter and Facebook so we can prevent duplicate postings.

Proposal

  • Enable the IntegratedSocialBundle in the AppKernel and implement the config.yml

  • Add an ID field to 'channel_connector_config' and refactor the connector controller to make use of the ID

  • In 'Integrated\Bundle\SocialBundle\Connector\Facebook\Exporter::export' check if is posted before.

    • Check the response code from '$this->facebook->post()' if the request was successful

    • In 'vendor/integrated/integrated/src/Common/Channel/Exporter/Exporter.php' change the function getExporter(OptionsInterface $options) to getExporter(ConfigInterface $config); (change all methods, including the interface). Need the connector ID to check if posted before.

    • Save the state per connector config to the metadata if not posted before (to support multiple connector configs).

    • The connector should return the remote post ID (or other data) and should not save the data. The data should be saved in the QueueExporter class. The data will be an array.

    • Save the Facebook/Twitter post ID to remove the article later (if the article is not published anymore)

  • To support delayed published times, use the 'time_execute' in the queue and check in the exporter if an document is published.

  • Also do the same for the 'Integrated\Bundle\SocialBundle\Connector\Twitter\Exporter'

NOTE: the exporter should not save any data to the document.

Deployment actions

None

Technical tasks

-

Status

Assignee

Unassigned

Reporter

Marcel van Oene

Product owner

Marijn Otte

OTM project ID

None

Client

Integrated Marijn

Plan date

None

Developer

Ger Jan van den Bosch

Code reviewer

Jeroen van Leeuwen

Max. hours

None

Error message

None

Follow up date

None

Switches

None

Refiner

Jeroen van Leeuwen

Story Points

2

Time tracking

7h 15m

Epic Link

Sprint

None

Fix versions

Priority

Major