2016-07-11 15 views
3

a Botを送信者の電話番号の受信に使用することはできません。
しかし、ボットのようなクライアントを実装する必要があります。このクライアントは、メッセージングしているすべての人に応答します。私はApacheでPHPを使用しています。テレグラムAPI、送信者の電話番号を取得しますか?

これはコマンドを受け取るのではなく、その電話番号を持つ人からの送信されたテキストに応答するので、Botではありません。だからあなたは連絡先(電話番号を使用)としてユーザーを追加し、テキストを送信します。

私の目標は...

私は、ピアIDがあること Telegram APIで見たが、それも可能だ場合、私は電話番号を取得する方法を見つけることができない、私はそれを受け取ると、送信者の電話番号を実現することです
+0

ユーザーIDはありますか?もしそうなら、['getFullUser'](https://core.telegram.org/method/users.getFullUser)を照会し、[' User'](https://core.telegram.org/type/)を取得してください。ユーザー)に電話番号を文字列として入力します。 –

+0

私は、受信時にメッセージの送信者を確認するはずです。あなたは私がピアIDとして言及したものを指していますか? – Ted

+0

これは当てはまりません:「送信者の電話番号を受け取るためにBotを使用することはできません」[[reference](https://core.telegram.org/bots/api#keyboardbutton)]それをクリックすると、彼/彼女の電話番号がボットに送られます。そして私はあなたの '電文 - ボット'キーワードでここに来ますが、あなたの質問はそれとは関係がありません。そのキーワードの友人を削除してください。 –

答えて

2

は、プライベートチャットで「訪問カード」ボタンを作成するために、githubのhttps://github.com/irazasyed/telegram-bot-sdk

とコードからこのLIBを試してみてください。

$keyboard = array(
        array(
         array( 
           'text'=>"Send your visit card", 
           'request_contact'=>true 
          ) 
         ) 
       ); //user button under keyboard. 

$reply_markup = $telegram->replyKeyboardMarkup([ 'keyboard' => $auth_keyboard, 'resize_keyboard' => true, 'one_time_keyboard' => false ]); 
$telegram->sendMessage([ 'chat_id' => $chat_id, 'text' => $reply, 'reply_markup' => $reply_markup ]); 

とコードをユーザーがボタンを押した後、「訪問カード」からUNICユーザーの携帯電話を取得するために

$user_phone = $result["message"]["contact"]["phone_number"]; 
if ($user_phone) { 
     $reply = $user_phone; 
     $telegram->sendMessage([ 'chat_id' => $chat_id, 'text' => $reply, 'reply_markup' => $reply_markup ]); 
    } 
関連する問題