Skip to content

Facebook extractor breaks #13

Open
@ghazalehnt

Description

@ghazalehnt

Due to the regular updates in the Facebook API, the extraction of FB data breaks:

Invalid Scopes: 
publish_actions, user_about_me, user_education_history, 
user_games_activity, user_relationship_details, user_relationships, 
user_religion_politics, user_website, user_work_history, rsvp_event. 
This message is only shown to developers. Users of your app will ignore 
these permissions if present. Please read the documentation for valid permissions at:
https://developers.facebook.com/docs/facebook-login/permissions

I tried commenting out the invalid scopes in the code, however another error came up.

11:59:17.334 [thymeflow-akka.actor.default-dispatcher-4] INFO  com.thymeflow.api.MainApi$ - Facebook token received at time 20137 milliseconds
11:59:18.002 [scala-execution-context-global-49] WARN  com.thymeflow.api.MainApi$ - Facebook service: Received a non-refreshable token.
11:59:18.333 [scala-execution-context-global-49] ERROR c.t.s.f.FacebookSynchronizer$Publisher - FacebookPublisher: Error getting user data.
spray.json.DeserializationException: Object is missing required member 'updated_time'
        at spray.json.package$.deserializationError(package.scala:23)
        at spray.json.ProductFormats.fromField(ProductFormats.scala:60)
        at spray.json.ProductFormats.fromField$(ProductFormats.scala:50)
        at com.thymeflow.sync.facebook.FacebookSynchronizer$.fromField(FacebookSynchronizer.scala:31)
        at spray.json.ProductFormatsInstances$$anon$12.read(ProductFormatsInstances.scala:384)
        at spray.json.ProductFormatsInstances$$anon$12.read(ProductFormatsInstances.scala:356)
        at akka.http.scaladsl.marshallers.sprayjson.SprayJsonSupport.$anonfun$sprayJsonUnmarshaller$1(SprayJsonSupport.scala:30)
        at akka.http.scaladsl.util.FastFuture$.$anonfun$map$1(FastFuture.scala:23)
        at akka.http.scaladsl.util.FastFuture$.strictTransform$1(FastFuture.scala:41)
        at akka.http.scaladsl.util.FastFuture$.transformWith$extension1(FastFuture.scala:45)
        at akka.http.scaladsl.util.FastFuture$.map$extension(FastFuture.scala:23)
        at akka.http.scaladsl.unmarshalling.Unmarshaller.$anonfun$map$3(Unmarshaller.scala:26)
        at akka.http.scaladsl.unmarshalling.Unmarshaller.$anonfun$transform$3(Unmarshaller.scala:23)
        at akka.http.scaladsl.unmarshalling.Unmarshaller$$anon$1.apply(Unmarshaller.scala:58)
        at akka.http.scaladsl.unmarshalling.Unmarshal.to(Unmarshal.scala:25)
        at com.thymeflow.sync.facebook.FacebookSynchronizer$Publisher.$anonfun$queryBuilder$6(FacebookSynchronizer.scala:124)
        at scala.concurrent.Future.$anonfun$flatMap$1(Future.scala:303)
        at scala.concurrent.impl.Promise.$anonfun$transformWith$1(Promise.scala:37)
        at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:60)
        at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402)
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
        at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
        at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: java.util.NoSuchElementException: key not found: updated_time
        at scala.collection.immutable.Map$Map4.apply(Map.scala:204)
        at spray.json.ProductFormats.fromField(ProductFormats.scala:57)
        ... 22 common frames omitted

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions