# How to send messages "from" application?

**URL:** <https://community.openai.com/t/how-to-send-messages-from-application/1373686>\
**Category:** API\
**Tags:** application, system-message\
**Created:** [February 9, 2026, 1:40am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686 "2026-02-09T01:40:19Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![salelder](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/salelder/32/721887_2.png) [@salelder](https://community.openai.com/u/salelder)\
**Post date:** [February 9, 2026, 1:40am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686/1 "2026-02-09T01:40:19Z")

</div>

In an application with an integrated assistant, what are some good ways to send a message “from” the application itself, as opposed to the user?

For example, in a todo list app with reminders, we may want to ping the assistant when a timer runs out. Something like:

{“role”: “application”, “content”: “Timer expired. Ask the user how it’s going.”}

That’s if custom “role”s were allowed.

It seems we would have to format the user message in some special way, like square brackets indicating messages not coming directly from the human user.

Or maybe we could have a function call like subscribe\_to\_app\_alerts() that the AI calls at the start of every conversation, and we return a tool output message every time there’s a subsequent app alert…

Or we could use developer messages.

Anyone have ideas or experience with this sort of pattern?

---

<div class="post-metadata">

**Author:** ![\_j](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/_j/32/766292_2.png) [@\_j](https://community.openai.com/u/_j)\
**Post date:** [February 9, 2026, 2:41am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686/2 "2026-02-09T02:41:51Z")

</div>

Running an AI input implies you want generative language that is unique based on some sort of question-answering or intelligence, with a varying context.

The best way if you don’t have a question needing an answer or a deliverable is to _not use an AI_ for things that a computer program can do, basically free, and then without messing up the quality of someone’s AI chat session history.

For example, this would be a silly “developer” to send on its own, because the output could be by a user interface, and the compliance would be better if the “application” language directly accompanied a user turn:

 ![image](https://us1.discourse-cdn.com/openai1/original/4X/1/4/5/1459600138a809a7cff100ab570cc55e59b50693.png)

You can see the AI can barely distinguish “developer” from “user” .. a constant issue in your own developed applications with this demoted role. You’d certainly improve it with “automatic notification from application interface” or such…

If the text was meant for AI understanding, but by an application sending it, include any application-based messaging when it can accompany a user input and where the user actually wants a response.

Why have an AI make “how its going” messages, when you can randomly pull from a list of inactivity messages that are pre-determined?

Or at least, not grow an existing conversation for a non-conversational AI task. You might schedule “Get the user their customized daily news report”, an AI-powered task not pinned to a specific chat history.

That: the whole response is a separate application, _“You observe a conversation that happened in the following text block, where a user has not asked for new input from our AI product for a while, and give them a tailored invitation back to the platform with a call-to-action based on their interests and past tasks we can send”._

“From an application itself…” I inquire about for you… and the AI model wasn’t so affected to become a patient tutor by the prior developer message that could have been a post-prompt.

 ![image](https://us1.discourse-cdn.com/openai1/original/4X/9/a/9/9a9cdc6990deedad63534b28dc125cc6037b6275.png)

If you’d like to experiment a bit with surrounding `user` messages with `developer` messages, where “tuning up” a response would be the goal, I have a “playground” where you can do this – which the OpenAI platform site “chat” does not allow you to see.

> **[MyPlayground](https://hotnova.com/playground/?mode=cc&p=H4sIAAAAAAAACnWRQW_bMAyF_4qgsx3Y6QoUPg5oD8O6Bq0vw7AD49COWll0RapJEOS_j0qzdF3Rk41H8vF71N5G5IkC4w3FEeQ6wNLjyjY9eMbiv-o3pnC3fMRO7oLffdLU4lZsY21hR1qh199hkvJyVpfzan5Z1nVZX-QibFt6wsC2mVfVl3lhBccJI0iKaJt6Vl2oRNPCNtXsqrB9xOeEodstMIAX3V4VdtLVquG_WmK8R1BSF4bbVwKJ6Yh5Uq_7nmJm9LRRkheMS2KXx0-KWnynwclXB3xO6d-U_eHYs4iOos61DuO5jXesQe7Jawi7whf0pKns38ItMsOQaz8pGYhowKzRT33ypqOgLAziSOMYYHYsEMTgVi30EwYYlN-4oFNj8uJKvVYw3Rpklm_6aq6Ev_Y2fkTQBYIhJ1f6aNbAhlHMjlI0ATdGu_RCoP6sJ-syBzfmgTp9FdeZNgllm0CbCNMp8aE4r8qm77Z86P39xvjQ6ZRvaTo-Wpdi1JlFfk_5AeM7ciPIornt4Q_YBxiurwIAAA)**

---

<div class="post-metadata">

**Author:** ![salelder](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/salelder/32/721887_2.png) [@salelder](https://community.openai.com/u/salelder)\
**Post date:** [February 9, 2026, 3:42am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686/3 "2026-02-09T03:42:13Z")

</div>

Hi \_j, I appreciate the thorough reply.

> Why have an AI make “how its going” messages, when you can randomly pull from a list of inactivity messages that are pre-determined?

In the example I had in mind, it would say something more specific, like “How’s it going with studying for the French exam you were telling me about earlier?” Ie where we do require some intelligence to come up with the message, and do want a reply from the AI, just not in direct response to a chat message.

> That: the whole response is a separate application, _“You observe a conversation that happened in the following text block, where a user has not asked for new input from our AI product for a while, and give them a tailored invitation back to the platform with a call-to-action based on their interests and past tasks we can send”._

Something like this might work, but could get quite complicated.

If anyone from OpenAI is reading, I would appreciate custom roles.

---

<div class="post-metadata">

**Author:** ![jeffvpace](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/jeffvpace/32/741732_2.png) [@jeffvpace](https://community.openai.com/u/jeffvpace)\
**Post date:** [February 9, 2026, 3:44am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686/4 "2026-02-09T03:44:30Z")

</div>

Just taking a stab: Seems like your talking about the need for a generic event handler and call back. You are refering to the API and not ChatGPT, right?

---

<div class="post-metadata">

**Author:** ![salelder](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/salelder/32/721887_2.png) [@salelder](https://community.openai.com/u/salelder)\
**Post date:** [February 9, 2026, 3:56am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686/5 "2026-02-09T03:56:06Z")

</div>

> [@jeffvpace](#):
>
> Seems like your talking about the need for a generic event handler and call back.

Handling events in my code is no problem. The issue is how best to structure conversations in the API when the assistant is sometimes replying to a chat message from a human and sometimes replying to an event within the application.

> [@jeffvpace](#):
>
> You are refering to the API and not ChatGPT, right?

Yes, I am a developer using the API.

---

<div class="post-metadata">

**Author:** ![jeffvpace](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/jeffvpace/32/741732_2.png) [@jeffvpace](https://community.openai.com/u/jeffvpace)\
**Post date:** [February 9, 2026, 4:49am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686/6 "2026-02-09T04:49:22Z")

</div>

Sounds like you have some real complexities going on here…

Maybe if you could supply a process chart with pseudocode, someone could help you - that’s what I would do.

---

<div class="post-metadata">

**Author:** ![\_j](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/_j/32/766292_2.png) [@\_j](https://community.openai.com/u/_j)\
**Post date:** [February 9, 2026, 6:31am UTC](https://community.openai.com/t/how-to-send-messages-from-application/1373686/7 "2026-02-09T06:31:46Z")

</div>

Typically we have:

- Conversations with users in a chat format with a history of their own messages being answered;
- Task and automation and data processing performed by AI.

Don’t mix the two, and you will have a happy life.
