/**
  * @param $snapchat Snapchat
  * @param $payload SendMediaPayload
  */
 public function __construct($snapchat, $payload)
 {
     parent::__construct($snapchat);
     $this->payload = $payload;
     $this->addParam("time", $payload->time);
     $this->addParam("media_id", $payload->media_id);
     $this->addParam("zipped", $payload->zipped);
     $this->addParam("camera_front_facing", "0");
     $this->addParam("orientation", self::ORIENTATION_PORTRAIT);
     $this->addParam("features_map", "{}");
     if (!empty($payload->recipients)) {
         $this->addParam("recipients", json_encode($payload->recipients));
     }
     if (!empty($payload->recipient_ids)) {
         $this->addParam("recipient_ids", json_encode($payload->recipient_ids));
     }
     if ($payload->set_as_story) {
         $this->addParam("shared_ids", "{}");
         $this->addParam("caption_text_display", "");
         $this->addParam("client_id", $payload->media_id);
         $this->addParam("my_story", "true");
         $this->addParam("type", $payload->type);
         $this->addParam("story_timestamp", RequestUtil::getCurrentMillis() / 1000);
         //todo: Support Video Thumbnails
         //$this->addFile("thumbnail_data", new RequestFile($this->payload->file_thumbnail, "application/octet-stream", "thumbnail_data"));
     }
 }
 /**
  * @return object
  * @throws \Exception
  */
 public function execute()
 {
     $friend_stories = array();
     $friend_stories[] = array("id" => $this->storyId, "screenshot_count" => $this->screenshot ? "1" : "0", "timestamp" => RequestUtil::getCurrentMillis());
     $this->addParam("friend_stories", json_encode($friend_stories));
     return parent::execute();
 }
Example #3
0
 /**
  * @param $file string File to Upload
  * @param $type int Media Type
  * @return UploadMediaPayload
  * @throws \Exception
  */
 private function uploadMedia($file, $type)
 {
     if (!$this->isLoggedIn()) {
         throw new \Exception("You must be logged in to call uploadMedia().");
     }
     $payload = new UploadMediaPayload();
     $payload->file = $file;
     $payload->type = $type;
     $payload->media_id = RequestUtil::generateMediaID($this->getUsername());
     $request = new UploadMediaRequest($this, $payload);
     return $request->execute();
 }
 /**
  * @param $snapchat Snapchat
  * @param $username string
  */
 public function __construct($snapchat, $username)
 {
     parent::__construct($snapchat);
     $this->addParam("features_map", "{}");
     $this->addParam("conversation_id", RequestUtil::getConversationID($this->snapchat->getUsername(), $username));
 }