예제 #1
0
 public static function sendPublicMsg($chatId, $msg)
 {
     $api_url = '/message/publicservice/sendMessage/101/1';
     $data = array('from_service_id' => 101, 'to_uid' => $chatId, 'msg_type' => 1, 'body' => $msg);
     try {
         $result = Util_CallAPI::get_data_from_chat_api($api_url, json_encode($data));
     } catch (Exception $e) {
         $result = false;
     }
     return $result;
 }
 /**
  * Job执行逻辑
  */
 public function handle_request()
 {
     //获取使用微聊的经纪人
     $brokersNum = Model_Mobile_BrokerChatInfo::getbrokersNum();
     for ($i = 0; $i <= $brokersNum; $i += self::ONCE_READ_BROKER_LIMIT) {
         $brokers = $this->readBrokers($i, self::ONCE_READ_BROKER_LIMIT);
         if (!empty($brokers)) {
             foreach ($brokers as $broker) {
                 $brokerIds[] = $broker['brokerId'];
             }
             //请求宋的接口,获取经纪人的
             $api_url = '/user/getFriendCount/';
             $result = Util_CallAPI::get_data_from_chat_api($api_url, json_encode($brokerIds));
             $friendsArr = $result['data']['result'];
             if (!empty($friendsArr)) {
                 foreach ($friendsArr as $arr) {
                     if ($arr['count'] >= self::FRIENDSNUM_LIMIT_400 && $arr['count'] <= self::FRIENDSNUM_LIMIT_400 + 5) {
                         $msg = '您的客户数已达到' . $arr['count'] . '(上限500),请及时清理客户列表,否则将无法接收到用户消息,谢谢!';
                     } else {
                         if ($arr['count'] >= self::FRIENDSNUM_LIMIT_450 && $arr['count'] <= self::FRIENDSNUM_LIMIT_450 + 5) {
                             $msg = '您的客户数已达到' . $arr['count'] . '(上限500),请及时清理客户列表,否则将无法接收到用户消息,谢谢!';
                         } else {
                             if ($arr['count'] >= self::FRIENDSNUM_LIMIT_500 && $arr['count'] <= self::FRIENDSNUM_LIMIT_500 + 5) {
                                 $msg = '您的客户列表已满,请及时清理客户列表,否则将无法接收到用户消息,谢谢!';
                             }
                         }
                     }
                     if ($msg) {
                         //发送公众号信息
                         $api_url = '/message/publicservice/sendMessage/101/1';
                         $data = array('from_service_id' => 101, 'to_uid' => $arr['from_uid'], 'msg_type' => 1, 'body' => $msg);
                         $result = Util_CallAPI::get_data_from_chat_api($api_url, json_encode($data));
                     }
                 }
             }
         }
     }
 }
예제 #3
0
 /** 调用api发送房源库公众号文本信息
  * @param $chatId
  * @param $msg
  * @return array
  */
 public static function sendFykPublicMsgTxt($chatId, $msg)
 {
     $api_url = '/message/sendAccountMessageFromServer?from_idc=1';
     $data = array('data' => array('from_uid' => 110, 'to_uid' => $chatId, 'msg_type' => 1, 'body' => $msg));
     $result = Util_CallAPI::get_data_from_chat_api($api_url, json_encode($data));
     return $result;
 }
예제 #4
0
 /**
  * 判断用户是否可以打招呼
  *
  * @param $app
  * @param $udid2
  * @return true-可以 false-不可以
  */
 public function checkIfUserChat($app, $udid2 = 0, $guid = 0, $macId = 0)
 {
     $api_url = '/app/settings';
     if ($app == 'i-ajk') {
         $data = array('device_list' => array(array('app' => $app, 'udid2' => $udid2)));
     } else {
         $data = array('device_list' => array(array('app' => $app, 'i' => $guid, 'macid' => $macId)));
     }
     $result = Util_CallAPI::get_data_from_chat_api($api_url, json_encode($data));
     if ($result['http_code'] != 200) {
         throw new Exception("微聊API获取用户打招呼开关网络错误");
     }
     if ($result['data']['status'] == 'OK' && isset($result['data']['result'][0]['recommend_switch']) && $result['data']['result'][0]['recommend_switch'] == 0) {
         return true;
     } else {
         return false;
     }
 }
예제 #5
0
 /**
  * 获取账户的好友信息
  * @param $selfChatId
  * @return bool
  */
 public static function getFriends($selfChatId)
 {
     $data = Util_CallAPI::get_data_from_chat_api('/user/friends/' . (int) $selfChatId);
     return $data && $data['http_code'] == 200 && $data['data']['status'] == 'OK' ? $data['data']['result'] : false;
 }