この typescript 関数を使用して、メッセンジャー ユーザーにメッセージを正常に送信できます。
import env from "env-var";
import superagent from "superagent";
import prefix from "superagent-prefix";
const PAGE_ACCESS_TOKEN = env.get("PAGE_ACCESS_TOKEN").required().asString();
const agent = superagent.agent()
.use(prefix("https://graph.facebook.com/v11.0"))
.query({access_token: PAGE_ACCESS_TOKEN})
.accept("application/json")
.type("application/json");
/**
* Sends a text message via the messenger platform.
* @param message The message text. Previews will not be shown for the URLs in this field.
* @param psid The page-scoped user ID (PSID) of the message recipient.
* @param messaging_type The messaging type of the message being sent.
*/
export async function sendTextMessage(
message: string,
psid: string,
messaging_type: MessagingType = "RESPONSE",
) {
const response = await agent
.post("/me/messages")
.send({
messaging_type: messaging_type,
recipient: {id: psid},
message: {text: message},
});
return response.body as SendAPIResponse;
}
そして、私はそれを次のように使用できます:
const psid = "<Page scoped id for the target user>";
const message = [
"- المرجو اختيار اللغة.",
"- Please choose a language.",
"- Veuillez choisir une langue.",
].join("\n");
void sendTextMessage(message, psid);
私の問題は、上記のメッセージを送信すると、テキストの配置がめちゃくちゃになることです。
アラビア語の文は右から左に、その他の文は左から右に並べられると思います。
どうやってやるの?