<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: March Developer Challenge - CloudEvents: Week 4 in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13651798#M2027388</link>
    <description>&lt;P&gt;Hash -&amp;nbsp;87a0351c2db1787a35fd16ea16149611f282caba1283e28f3774b0dd1754ac8f&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="NagarajanK_0-1711565204658.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/87687i3C67E21FE4E194D1/image-size/medium?v=v2&amp;amp;px=400" role="button" title="NagarajanK_0-1711565204658.png" alt="NagarajanK_0-1711565204658.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="NagarajanK_1-1711565233794.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/87688i1F6D55460D22B8C4/image-size/medium?v=v2&amp;amp;px=400" role="button" title="NagarajanK_1-1711565233794.png" alt="NagarajanK_1-1711565233794.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 27 Mar 2024 18:48:03 GMT</pubDate>
    <dc:creator>Nagarajan-K</dc:creator>
    <dc:date>2024-03-27T18:48:03Z</dc:date>
    <item>
      <title>March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648232#M2027321</link>
      <description>&lt;P class=""&gt;Last week we learnt more about Event-Driven Architecture and we successfully published a CloudEvent to SAP Integration Suite, advanced event mesh (AEM). This week we will build upon what we learnt last week and we will extend our program to subscribe to a topic. By subscribing to a topic we will be able to receive messages from AEM. Before we get to the challenge, we might need to expand a bit on some concepts. Let's get started.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="wk4-data-flow.png" style="width: 979px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/83880i7956A1E544EAA068/image-size/large?v=v2&amp;amp;px=999" role="button" title="wk4-data-flow.png" alt="wk4-data-flow.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P align="center"&gt;&lt;I&gt;Week 4 - Data flow&lt;/I&gt;&lt;/P&gt;&lt;BLOCKQUOTE dir="auto"&gt;&lt;P&gt;Links to March's developer challenge:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Week 1: &lt;A href="https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudevents-week-1/td-p/13629129" target="_blank" rel="noopener"&gt;https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudeven...&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;Week 2: &lt;A href="https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudevents-week-2/m-p/13635719" target="_blank" rel="noopener"&gt;https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudeven...&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;Week 3: &lt;A href="https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudevents-week-3/td-p/13642145" target="_blank" rel="noopener"&gt;https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudevents-week-3/td-p/13642145&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;Week 4: &lt;A href="https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudevents-week-4/td-p/13648232" target="_blank" rel="noopener"&gt;https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudevents-week-4/td-p/13648232&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/BLOCKQUOTE&gt;&lt;H2&gt;Topics&lt;/H2&gt;&lt;P class=""&gt;Last week we mentioned that a topic is a means by which a publisher classifies a message. The topic tells us what type of message we will receive if we subscribe to a specific topic. In essence, it is a string that is composed of one or more levels. Each level is separated by a forward slash (/) and the levels can be anything. This is commonly known as topic-level granularity. The granularity allows for more targeted and efficient information exchange. Instead of having a single topic for all updates on a business object in a complex system (/BusinessPartner), the system can have distinct topics for different types of updates on a business object (/BusinessPartner/Created, /BusinessPartner/Updated, /BusinessPartner/Deleted). There is no specific schema/specification on how you need to structure your topic string but you do find that patterns are established within a system. Let's get familiar with the structure of a topic by "dissecting" a real-world topic. Below we can see a topic on which an SAP S/4HANA Cloud system will publish a Business Partner message.&lt;/P&gt;&lt;P class=""&gt;Example:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;sap/S4HANAOD/E4L/ce/sap/s4/beh/businesspartner/v1/BusinessPartner/Created/v1&lt;/FONT&gt;&lt;/EM&gt;:&lt;/P&gt;&lt;UL class=""&gt;&lt;LI&gt;&lt;EM&gt;sap/S4HANAOD/E4L&lt;/EM&gt;: System information.&lt;/LI&gt;&lt;LI&gt;&lt;EM&gt;/ce&lt;/EM&gt;: CloudEvent. We know that all events published by an SAP S/4HANA Cloud system follow the CloudEvent specification&lt;/LI&gt;&lt;LI&gt;&lt;EM&gt;/sap/s4&lt;/EM&gt;: This is coming from an SAP S/4HANA system.&lt;/LI&gt;&lt;LI&gt;&lt;EM&gt;/beh/businesspartner/v1/BusinessPartner&lt;/EM&gt;: Information of the Business object that we will be receiving.&lt;/LI&gt;&lt;LI&gt;&lt;EM&gt;/Created&lt;/EM&gt;: This is the action that took place in the source system. In this case, it is notifying us that a BusinessPartner was created. Many actions can take place in a system, e.g. this could be&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;/Updated,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;/Deleted. In another case, if we were dealing with a business object like a PurchaseOrder, there could be an event raised when it is&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;/Cancelled&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;or&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;/Rejected.&lt;/LI&gt;&lt;LI&gt;&lt;EM&gt;/v1&lt;/EM&gt;: Version of the message. If a new version of the message is made available, e.g. adding new fields to the payload, then this will change.&lt;/LI&gt;&lt;/UL&gt;&lt;BLOCKQUOTE dir="auto"&gt;&lt;P class=""&gt;In our case, we've defined levels on our topic string based on the week, SAP Community ID and action, e.g.&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;dev-challenge/week-4/ajmaradiaga/notification&lt;/FONT&gt;&lt;/EM&gt;.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P class=""&gt;Now, by knowing the topic on which a message type will be published, we can create a consumer program/service that subscribes to the topic directly (aka topic endpoint) and processes the messages sent to it. Generally, you can subscribe to a topic by specifying the entire topic string when establishing the connection, e.g.&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;FONT face="courier new,courier"&gt;&lt;EM&gt;sap/S4HANAOD/E4L/ce/sap/s4/beh/businesspartner/v1/BusinessPartner/Created/v1&lt;/EM&gt;&lt;/FONT&gt;. But what if we want to subscribe to all actions (Created, Updated, Deleted) that occur on a BusinessPartner object? Luckily, in the case of SAP Integration Suite, advanced event mesh we can subscribe to the topic by using wildcards (*). For example, by subscribing to the topic &lt;EM&gt;&lt;FONT face="courier new,courier"&gt;sap/S4HANAOD/E4L/ce/sap/s4/beh/businesspartner/v1/BusinessPartner/*/v1&lt;/FONT&gt;&lt;/EM&gt; I will be able to get all messages for different actions (Created, Updated, Deleted) whose version is v1. In AEM, the &amp;gt; character can be used at the last level of a subscription to indicate a "one or more" wildcard match for any topics, e.g. by subscribing to the topic&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;FONT face="courier new,courier"&gt;&lt;EM&gt;sap/S4HANAOD/E4L/ce/sap/s4/beh/&amp;gt;&lt;/EM&gt;&lt;/FONT&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;will bring all objects that are published under that prefix, independent of type, action, and version.&lt;/P&gt;&lt;BLOCKQUOTE dir="auto"&gt;&lt;P class=""&gt;In the example above we can see how the topic level granularity can allow a consumer program/service to subscribe only to the information it needs. To learn more about wildcard characters in topic subscriptions &lt;span class="lia-unicode-emoji" title=":backhand_index_pointing_right:"&gt;👉&lt;/span&gt;:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A title="https://help.pubsub.em.services.cloud.sap/Messaging/Wildcard-Charaters-Topic-Subs.htm" href="https://help.pubsub.em.services.cloud.sap/Messaging/Wildcard-Charaters-Topic-Subs.htm" target="_blank" rel="noopener"&gt;https://help.pubsub.em.services.cloud.sap/Messaging/Wildcard-Charaters-Topic-Subs.htm&lt;/A&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P class=""&gt;If our consumer program/service subscribes to a topic, we create &lt;STRONG&gt;&lt;EM&gt;a topic endpoint&lt;/EM&gt;&lt;/STRONG&gt;, and we will receive all messages for that topic subscription. That said, topic endpoints last only as long as the consumer is connected. The problem here is that our consumer needs to be online in order to receive a message. If the consumer becomes unavailable then we will end up losing messages In some scenarios, this is unacceptable and we need to ensure that we receive and process all messages published. Fortunately, there is a mechanism to retain messages without the need for a consumer service to be online 100%. Then, the consumer can process the messages asynchronously or whenever it is available. Enter &lt;STRONG&gt;&lt;EM&gt;Queues&lt;/EM&gt;&lt;/STRONG&gt;.&lt;/P&gt;&lt;H2&gt;Queues&lt;/H2&gt;&lt;P&gt;&amp;nbsp;Queues allow us to subscribe to one or more topics and receive messages for all topics matching their subscriptions. The messages are received by the messaging system, saved in the queue and delivered to consuming clients if they are online and connected or held in the queue until the consumer becomes available. Queues can provide exclusive access to one consumer or access to multiple consumers where messages are distributed among the consumers. The message will be in the queue until a consumer acknowledges that a message has been processed. Only then the message will be removed from the queue.&lt;BR /&gt;&lt;BR /&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="wk4-guaranteed-queue.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/83884iECD7433E967E4905/image-size/medium?v=v2&amp;amp;px=400" role="button" title="wk4-guaranteed-queue.png" alt="wk4-guaranteed-queue.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P align="center"&gt;&lt;I&gt;Queue&lt;/I&gt;&lt;/P&gt;&lt;P class=""&gt;In the case of AEM, Queues can be durable or non-durable:&lt;/P&gt;&lt;UL class=""&gt;&lt;LI&gt;Durable queues exist until they are removed by an administrative action. They accumulate messages whether clients are online or offline. When offline clients reconnect, they receive all of the messages that accumulated while they were offline.&lt;/LI&gt;&lt;LI&gt;Temporary (or non-durable) queues follow the lifecycle of the client connection and are useful for ensuring message persistence while clients are online.&lt;/LI&gt;&lt;/UL&gt;&lt;H2&gt;Topic endpoint&lt;/H2&gt;&lt;P&gt;As mentioned before, we can subscribe to a topic directly. A topic endpoint is created after establishing a connection to AEM (the messaging service - &lt;FONT face="courier new,courier"&gt;messaging_service.connect()&lt;/FONT&gt;) and subscribing to the topic (&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;dev-challenge/week-4/[sapcommunityid]/processed&lt;/FONT&gt;&lt;/EM&gt; - &lt;FONT face="courier new,courier"&gt;direct_receive_service.with_subscriptions(topics).build()&lt;/FONT&gt;). This is not a polling mechanism, but a running connection is required, through which AEM will send a message to your service. If your service is not online the message will be missed. See the code sample in the section below.&lt;/P&gt;&lt;BLOCKQUOTE dir="auto"&gt;&lt;P class=""&gt;To learn more about Topic endpoints and Queues &lt;span class="lia-unicode-emoji" title=":backhand_index_pointing_right:"&gt;👉&lt;/span&gt;:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A title="https://help.pubsub.em.services.cloud.sap/Get-Started/topic-endpoints-queues.htm" href="https://help.pubsub.em.services.cloud.sap/Get-Started/topic-endpoints-queues.htm" target="_blank" rel="noopener"&gt;https://help.pubsub.em.services.cloud.sap/Get-Started/topic-endpoints-queues.htm&lt;/A&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;H2&gt;Week 4 challenge - Subscribe to topic in SAP Integration Suite, advanced event mesh&lt;/H2&gt;&lt;P class=""&gt;&lt;span class="lia-unicode-emoji" title=":backhand_index_pointing_right:"&gt;👉&lt;/span&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;Your task for this week is:&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;Extend the program you created for last week's challenge and subscribe to the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;dev-challenge/week-4/[sapcommunityid]/processed&lt;/FONT&gt;&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;topic (this will create a topic endpoint). Your program should send a message to the topic&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;dev-challenge/week-4/[sapcommunityid]/notification&lt;/FONT&gt;&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and expect a response on the following topic&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;dev-challenge/week-4/[sapcommunityid]/processed&lt;/FONT&gt;&lt;/EM&gt;. The response will contain a hash. Please share the hash value as a comment in the discussion.&lt;/P&gt;&lt;BLOCKQUOTE dir="auto"&gt;&lt;P class=""&gt;Remember that we are creating a topic endpoint, which means that before sending the notification message (&lt;FONT face="courier new,courier"&gt;&lt;EM&gt;dev-challenge/week-4/[sapcommunityid]/notification&lt;/EM&gt;&lt;/FONT&gt;), you need to ensure that the subscriber on your end is working and subscribed to&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;FONT face="courier new,courier"&gt;&lt;EM&gt;dev-challenge/week-4/[sapcommunityid]/processed&lt;/EM&gt;&lt;/FONT&gt;, as the processor service will handle the notification almost instantaneously. If your subscriber is not online, the message will be missed/"lost" as no one will be listening on the topic.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P align="center"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="wk4-data-flow.png" style="width: 979px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/83886iC521613EDF2892F8/image-size/large?v=v2&amp;amp;px=999" role="button" title="wk4-data-flow.png" alt="wk4-data-flow.png" /&gt;&lt;/span&gt;&lt;I&gt;Week 4 - Data flow&lt;/I&gt;&lt;/P&gt;&lt;P class=""&gt;The diagram above explains the message processing. For example, in my case, I will publish the message to the topic&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;dev-challenge/week-4/ajmaradiaga/notification&lt;/FONT&gt;&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and I will receive a response on the following topic&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;FONT face="courier new,courier"&gt;&lt;EM&gt;dev-challenge/week-4/ajmaradiaga/processed&lt;/EM&gt;&lt;/FONT&gt;. Below is an example of the response payload sent by the processor service to the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;FONT face="courier new,courier"&gt;&lt;EM&gt;dev-challenge/week-4/ajmaradiaga/processed&lt;/EM&gt;&lt;/FONT&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;topic:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;{&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;"id"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"8dda9501-6379-4edc-91a7-6e78bec68746"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;"time"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"2024-03-20T14:42:03.863Z"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;"type"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"com.sap.dev-challenge.wk-4.processed.v1"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;"source"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;"specversion"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"1.0"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;"data"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;{&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"messageId"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"a2e9ad2a-4955-4fb5-bd6c-91785548854b"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"sapCommunityId"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"ajmaradiaga"&lt;/SPAN&gt;&lt;SPAN class=""&gt;,&lt;/SPAN&gt;
    &lt;SPAN class=""&gt;"hash"&lt;/SPAN&gt;&lt;SPAN class=""&gt;:&lt;/SPAN&gt; &lt;SPAN class=""&gt;"285ed899bc5de8540a5ade05a673d60cbd68dc7bb2e21afd8507741a777e8393"&lt;/SPAN&gt;
  &lt;SPAN class=""&gt;}&lt;/SPAN&gt;
&lt;SPAN class=""&gt;}&lt;/SPAN&gt;
&lt;/PRE&gt;&lt;P class=""&gt;To subscribe to the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;EM&gt;&lt;FONT face="courier new,courier"&gt;dev-challenge/week-4/[sapcommunityid]/processed&lt;/FONT&gt;&lt;/EM&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;topic you will need to create a topic endpoint. This can be achieved by using the Solace SDK available for your particular language. Similar to week 3, there is no need to reinvent the wheel here... check out the code available in the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://github.com/SolaceSamples" target="_blank" rel="noopener"&gt;Solace Samples org&lt;/A&gt;, e.g. for&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://github.com/SolaceSamples/solace-samples-nodejs/tree/master/src/features" target="_blank" rel="noopener"&gt;Node.js&lt;/A&gt;,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://github.com/SolaceSamples/solace-samples-python/tree/main/patterns" target="_blank" rel="noopener"&gt;Python&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and the tutorials available for the different&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://tutorials.solace.dev/" target="_blank" rel="noopener"&gt;programming languages&lt;/A&gt;. There are plenty of examples there that show you how to use the different protocols.&lt;/P&gt;&lt;P class=""&gt;In my case, I ended up using Python for which there is a library available (&lt;A href="https://pypi.org/project/solace-pubsubplus/" target="_blank" rel="noopener"&gt;solace-pubsubpluis&lt;/A&gt;) and there is also a detailed guide for how to&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.solace.com/API/API-Developer-Guide-Python/Python-DM-Receive.htm" target="_blank" rel="noopener"&gt;receive messages using the Python library&lt;/A&gt;. I connect to AEM using Solace Messaging. See some sample code below.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="python"&gt;from solace.messaging.messaging_service import MessagingService, RetryStrategy
from solace.messaging.receiver.inbound_message import InboundMessage
from solace.messaging.receiver.message_receiver import MessageHandler
from solace.messaging.config.transport_security_strategy import TLS
from solace.messaging.resources.topic_subscription import TopicSubscription

SOLACE_TRANSPORT_PROTOCOL = os.getenv("SOLACE_SMF_TRANSPORT_PROTOCOL")
SOLACE_HOST = os.getenv("SOLACE_SMF_HOST")
SOLACE_PORT = os.getenv("SOLACE_SMF_PORT")
SOLACE_USERNAME = os.getenv("SOLACE_SMF_USERNAME")
SOLACE_PASSWORD = os.getenv("SOLACE_SMF_PASSWORD")

...

def direct_message_consume(msg_service: MessagingService, consumer_subscription: str):
    """This method will create an receiver instance to receive str or byte array type message"""
    try:
        topics = [TopicSubscription.of(consumer_subscription)]
        
        direct_receive_service = msg_service.create_direct_message_receiver_builder()
        direct_receive_service = direct_receive_service.with_subscriptions(topics).build()
        direct_receive_service.start()
        direct_receive_service.receive_async(MessageHandlerImpl())
        print(f"Subscribed to: {consumer_subscription}")

        # Enter never ending loop to keep the receiver running
        while True:
            time.sleep(MAX_SLEEP)

    finally:
        direct_receive_service.terminate()
        msg_service.disconnect()

...

transport_security = TLS.create().without_certificate_validation()

messaging_service = MessagingService.builder().from_properties(broker_props) \
    .with_reconnection_retry_strategy(RetryStrategy.parametrized_retry(20, 3)) \
    .with_transport_security_strategy(transport_security) \
    .build()

messaging_service.connect()

##########################
# Consuming from a topic #
##########################
CONSUMER_SUBSCRIPTION = "dev-challenge/week-4/ajmaradiaga/processed"

print("Execute Direct Consume - String")
direct_message_consume(messaging_service, CONSUMER_SUBSCRIPTION)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;H3&gt;&lt;span class="lia-unicode-emoji" title=":police_car_light:"&gt;🚨&lt;/span&gt;Credentials &lt;span class="lia-unicode-emoji" title=":police_car_light:"&gt;🚨&lt;/span&gt;&lt;/H3&gt;&lt;P class=""&gt;To communicate with AEM, you will need to authenticate when posting a message. In the section below you can find the credentials required to connect.&lt;/P&gt;&lt;BLOCKQUOTE dir="auto"&gt;&lt;P class=""&gt;For the adventurous out there.... I'm also sharing the connection details for different protocols that we can use to communicate with AEM, e.g. AMQP, Solace Messaging, Solace Web Messaging. In case you want to play around and get familiar with different protocols.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;span class="lia-unicode-emoji" title=":locked_with_key:"&gt;🔐&lt;/span&gt;Expand to view credentials &lt;span class="lia-unicode-emoji" title=":unlocked:"&gt;🔓&lt;/span&gt;&lt;/P&gt;&lt;DIV class=""&gt;&lt;LI-SPOILER&gt;&lt;UL class=""&gt;&lt;LI&gt;Connection Type:&lt;UL class=""&gt;&lt;LI&gt;AMQP: amqps://mr-connection-plh11u5eu6a.messaging.solace.cloud:5671&lt;/LI&gt;&lt;LI&gt;Solace Messaging: tcps://mr-connection-plh11u5eu6a.messaging.solace.cloud:55443&lt;/LI&gt;&lt;LI&gt;Solace Web Messaging: wss://mr-connection-plh11u5eu6a.messaging.solace.cloud:443&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;Username: solace-cloud-client&lt;/LI&gt;&lt;LI&gt;Password: mcrtp5mps5q12lfqed5kfndbi2&lt;/LI&gt;&lt;LI&gt;Message VPN: eu-fr-devbroker&lt;/LI&gt;&lt;/UL&gt;&lt;/LI-SPOILER&gt;&lt;/DIV&gt;&lt;HR /&gt;&lt;H3&gt;&lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt;Validation process for this week's challenge &lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt;&lt;/H3&gt;&lt;P class=""&gt;As part of the validation process for this week's challenge, there is a "processor service" that will process the messages sent. The processor program follows the same validation process as in week 3 and it will generate a response, which will be sent to the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;dev-challenge/week-4/[sapcommunityid]/processed&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;topic.&lt;/P&gt;&lt;BLOCKQUOTE dir="auto"&gt;&lt;P class=""&gt;You can monitor the messages processed by the processor service on this website:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A title="https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/messages-hash/webapp/index.html" href="https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/messages-hash/webapp/index.html" target="_blank" rel="noopener"&gt;https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/messages-hash/webapp/index.html&lt;/A&gt;. Similar to last week, you will also be able to see if there are any errors in the message sent, the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A title="https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/consumed-messages/webapp/index.html" href="https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/consumed-messages/webapp/index.html" target="_blank" rel="noopener"&gt;monitoring app&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;will tell you what the error is, e.g. not a valid CloudEvent,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;sapcommunityid&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;extension context attribute missing, or&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;sapcommunityid&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;doesn't match community Id specified in topic. The processor service is subscribed to the topics using a wildcard -&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;dev-challenge/week-4/*/notification&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and will only generate hashes for valid payloads.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P class=""&gt;Below you can see a gif of a message processed successfully by the processor service.&lt;/P&gt;&lt;P class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="wk4-solution.gif" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/83889i9DF1A2DA0AD8C357/image-size/large?v=v2&amp;amp;px=999" role="button" title="wk4-solution.gif" alt="wk4-solution.gif" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 May 2025 06:35:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648232#M2027321</guid>
      <dc:creator>ajmaradiaga</dc:creator>
      <dc:date>2025-05-22T06:35:17Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648739#M2027330</link>
      <description>&lt;P&gt;Interested in learning more about SAP Integration Suite, advanced event mesh? How about you join us in this in-person event that will take place on the 6th of May @ the SAP office in Madrid, Spain - &lt;A href="https://community.sap.com/t5/sap-codejam/event-driven-integrations-with-sap-integration-suite-advanced-event-mesh/ev-p/13648705" target="_blank" rel="noopener"&gt;https://community.sap.com/t5/sap-codejam/event-driven-integrations-with-sap-integration-suite-advanced-event-mesh/ev-p/13648705&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 27 Mar 2024 06:48:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648739#M2027330</guid>
      <dc:creator>ajmaradiaga</dc:creator>
      <dc:date>2024-03-27T06:48:59Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648938#M2027336</link>
      <description>&lt;P&gt;Here is my submission&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":thumbs_up:"&gt;👍&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;JS with solclientjs:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;const solace = require("solclientjs");

const solaceConfig = {
    host: "tcps://mr-connection-plh11u5eu6a.messaging.solace.cloud:55443",
    vpnName: "eu-fr-devbroker",
    userName: "solace-cloud-client",
    passWord: "mcrtp5mps5q12lfqed5kfndbi2",
    topic: "dev-challenge/week-4/r00k13d3v/processed",
};

function initSolaceSession() {
    const factoryProps = new solace.SolclientFactoryProperties();
    factoryProps.profile = solace.SolclientFactoryProfiles.version10;
    solace.SolclientFactory.init(factoryProps);

    const session = solace.SolclientFactory.createSession({
        url: solaceConfig.host,
        vpnName: solaceConfig.vpnName,
        userName: solaceConfig.userName,
        password: solaceConfig.passWord,
    });

    session.on(solace.SessionEventCode.UP_NOTICE, function (sessionEvent) {
        console.log("Conectado a Solace.");
        subscribeToTopic();
    });

    session.on(solace.SessionEventCode.CONNECT_FAILED_ERROR, function (sessionEvent) {
        console.log("Conexión fallida a Solace.");
    });

    session.on(solace.SessionEventCode.DISCONNECTED, function (sessionEvent) {
        console.log("Desconectado de Solace.");
    });

    session.on(solace.SessionEventCode.SUBSCRIPTION_ERROR, function (sessionEvent) {
        console.log("Error de suscripción.");
    });

    session.on(solace.SessionEventCode.MESSAGE, function (message) {
        console.log("Mensaje recibido:", message.getBinaryAttachment());
    });

    session.connect();

    function subscribeToTopic() {
        session.subscribe(solace.SolclientFactory.createTopicDestination(solaceConfig.topic), true, solaceConfig.topic, 10000);
    }
}

initSolaceSession();&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Results:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="r00k13d3v_0-1711389389361.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86147iC80EA82BB323FA54/image-size/medium?v=v2&amp;amp;px=400" role="button" title="r00k13d3v_0-1711389389361.png" alt="r00k13d3v_0-1711389389361.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="r00k13d3v_1-1711389410480.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86149iC4F61BE5A60E2F3E/image-size/medium?v=v2&amp;amp;px=400" role="button" title="r00k13d3v_1-1711389410480.png" alt="r00k13d3v_1-1711389410480.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2024 18:00:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648938#M2027336</guid>
      <dc:creator>r00k13d3v</dc:creator>
      <dc:date>2024-03-25T18:00:51Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648944#M2027337</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hash value:&amp;nbsp;&lt;SPAN&gt;db38088e6ac9ad74447faac9b0c36667df7c4edd0af2dbe4b2be939a3ad9876a&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Publish:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-03-25 at 11.25.22 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86145i0D7618C3A857272B/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot 2024-03-25 at 11.25.22 PM.png" alt="Screenshot 2024-03-25 at 11.25.22 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-03-25 at 11.26.07 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86148i7C362E017F43ADEE/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot 2024-03-25 at 11.26.07 PM.png" alt="Screenshot 2024-03-25 at 11.26.07 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Consume:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-03-25 at 11.27.08 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86151i8725E684BA2A08C3/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot 2024-03-25 at 11.27.08 PM.png" alt="Screenshot 2024-03-25 at 11.27.08 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-03-25 at 11.29.03 PM.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86155i434FAE4FB9B43D0F/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot 2024-03-25 at 11.29.03 PM.png" alt="Screenshot 2024-03-25 at 11.29.03 PM.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2024 19:01:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648944#M2027337</guid>
      <dc:creator>PriyankaChak</dc:creator>
      <dc:date>2024-03-25T19:01:28Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648996#M2027339</link>
      <description>&lt;P&gt;Here is my submission:&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;const solace = require('solclientjs').debug; // Required for debugging purposes
const dotenv = require('dotenv');

// Load the environment variables from the .env file
dotenv.config();

const SOLACE_TRANSPORT_PROTOCOL = process.env.SOLACE_SMF_TRANSPORT_PROTOCOL;
const SOLACE_HOST = process.env.SOLACE_SMF_HOST;
const SOLACE_PORT = process.env.SOLACE_SMF_PORT;
const SOLACE_USERNAME = process.env.SOLACE_SMF_USERNAME;
const SOLACE_PASSWORD = process.env.SOLACE_SMF_PASSWORD;
const SOLACE_VPNNAME = process.env.SOLACE_SMF_VPNNAME;

const MAX_SLEEP = 1000; // Set your desired sleep duration

function directMessageConsume(session, consumerSubscription) {
    try {
        const topic = solace.SolclientFactory.createTopic(consumerSubscription);

        session.subscribe(topic, true, consumerSubscription, 1000);
        console.log(`Subscribed to: ${consumerSubscription}`);

    } catch (error) {
        console.error(`Error subscribing to topic: ${error}`);
    }
}

async function connectAndConsume() {
    // Initialize factory with the most recent API defaults
    const factoryProps = new solace.SolclientFactoryProperties();
    factoryProps.profile = solace.SolclientFactoryProfiles.version10;
    solace.SolclientFactory.init(factoryProps);

    const sessionProperties = new solace.SessionProperties();
    sessionProperties.url = `${SOLACE_TRANSPORT_PROTOCOL}://${SOLACE_HOST}:${SOLACE_PORT}`;
    sessionProperties.vpnName = SOLACE_VPNNAME;
    sessionProperties.userName = SOLACE_USERNAME;
    sessionProperties.password = SOLACE_PASSWORD;

    const session = await solace.SolclientFactory.createSession(sessionProperties);
    session.connect();

    session.on(solace.SessionEventCode.UP_NOTICE, (sessionEvent) =&amp;gt; {
        console.log('Session is up');
        directMessageConsume(session, 'dev-challenge/week-4/spirit2681/processed');
    });

    session.on(solace.SessionEventCode.CONNECT_FAILED_ERROR, (sessionEvent) =&amp;gt; {
        console.log('Connection failed to the message router: ' + sessionEvent.infoStr);
    });

    session.on(solace.SessionEventCode.DISCONNECTED, (sessionEvent) =&amp;gt; {
        console.log('Disconnected');
    });

    session.on(solace.SessionEventCode.SUBSCRIPTION_ERROR, (sessionEvent) =&amp;gt; {
        console.log('Cannot add subscription: ' + sessionEvent.correlationKey);
    });

    session.on(solace.SessionEventCode.SUBSCRIPTION_OK, (sessionEvent) =&amp;gt; {
        console.log('Subscription added: ' + sessionEvent.correlationKey);
    });

    session.on(solace.SessionEventCode.MESSAGE, (sessionEvent) =&amp;gt; {
        console.log('Message Received: ' + sessionEvent.getBinaryAttachment());
    });
}

connectAndConsume();&lt;/LI-CODE&gt;&lt;P&gt;Published message:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="spirit2681_0-1711391717522.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86189iF44AEC4D01CD870B/image-size/large?v=v2&amp;amp;px=999" role="button" title="spirit2681_0-1711391717522.png" alt="spirit2681_0-1711391717522.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Received message in the consumer:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="spirit2681_1-1711391792694.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86190i963EC31FAC895900/image-size/large?v=v2&amp;amp;px=999" role="button" title="spirit2681_1-1711391792694.png" alt="spirit2681_1-1711391792694.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Status shown in the application:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="spirit2681_2-1711391882123.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86192i543F17C0440EB8F6/image-size/large?v=v2&amp;amp;px=999" role="button" title="spirit2681_2-1711391882123.png" alt="spirit2681_2-1711391882123.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2024 18:38:27 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13648996#M2027339</guid>
      <dc:creator>spirit2681</dc:creator>
      <dc:date>2024-03-25T18:38:27Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649064#M2027340</link>
      <description>&lt;P&gt;I have a problem receiving messages. The code I am using is a sample from GitHub.&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/SolaceSamples/solace-samples-nodejs/blob/master/src/basic-samples/TopicSubscriber.js" target="_self"&gt;https://github.com/SolaceSamples/solace-samples-nodejs/blob/master/src/basic-samples/TopicSubscriber.js&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Subscribing to the topic is successful, but I cannot receive messages when I publish events to `&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;/dev-challenge/week-4/MioYasutake&lt;/SPAN&gt;&lt;SPAN&gt;/notification`.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MioYasuatke_0-1711400804184.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86213i06FE51BC50D7410A/image-size/large?v=v2&amp;amp;px=999" role="button" title="MioYasuatke_0-1711400804184.png" alt="MioYasuatke_0-1711400804184.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;In the monitor app I can see my messages have been processed. I have also tested with other participants' code, but the results were the same.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MioYasuatke_2-1711400980368.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86215iB9B1EF493A31A573/image-size/large?v=v2&amp;amp;px=999" role="button" title="MioYasuatke_2-1711400980368.png" alt="MioYasuatke_2-1711400980368.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2024 21:15:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649064#M2027340</guid>
      <dc:creator>MioYasutake</dc:creator>
      <dc:date>2024-03-25T21:15:16Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649087#M2027341</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/789"&gt;@MioYasutake&lt;/a&gt;&amp;nbsp;!&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I've tried with the repository you mentioned from GitHub &amp;gt; Codespaces, and it worked for both your topic and mine. Here is the code I modified and the command I executed:&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Change Line 213:&lt;/LI&gt;&lt;/UL&gt;&lt;LI-CODE lang="javascript"&gt;var subscriber = new TopicSubscriber(solace, 'dev-challenge/week-4/MioYasuatke/processed');&lt;/LI-CODE&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;Run command:&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI-CODE lang="bash"&gt;node src/basic-samples/TopicSubscriber.js tcps://mr-connection-plh11u5eu6a.messaging.solace.cloud:55443 solace-cloud-client@eu-fr-devbroker mcrtp5mps5q12lfqed5kfndbi2&lt;/LI-CODE&gt;&lt;UL&gt;&lt;LI&gt;&amp;nbsp;Send request and result:&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="r00k13d3v_0-1711407384802.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86222i275A0F3019B79BC7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="r00k13d3v_0-1711407384802.png" alt="r00k13d3v_0-1711407384802.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="r00k13d3v_1-1711407391600.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86223i89D2469D7584BB97/image-size/medium?v=v2&amp;amp;px=400" role="button" title="r00k13d3v_1-1711407391600.png" alt="r00k13d3v_1-1711407391600.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I hope this has solved your problem. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Best regards!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2024 22:58:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649087#M2027341</guid>
      <dc:creator>r00k13d3v</dc:creator>
      <dc:date>2024-03-25T22:58:31Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649096#M2027342</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for your prompt reply!&lt;/P&gt;&lt;P&gt;I discovered that I was publishing to the wrong topic - "MioYasuatke" (instead of "MioYasutake"). Correcting the topic resolved my issue.&lt;/P&gt;</description>
      <pubDate>Mon, 25 Mar 2024 23:57:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649096#M2027342</guid>
      <dc:creator>MioYasutake</dc:creator>
      <dc:date>2024-03-25T23:57:00Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649098#M2027343</link>
      <description>&lt;P&gt;Hash value:&amp;nbsp;9fd029aeb58df50ec143d3a6f703c20e1a9f1426958cd877ebea9b6a9f99bb6f&lt;/P&gt;&lt;P&gt;Response:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MioYasuatke_0-1711411115444.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86224i884BA7097D91FF32/image-size/large?v=v2&amp;amp;px=999" role="button" title="MioYasuatke_0-1711411115444.png" alt="MioYasuatke_0-1711411115444.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;The code I'm using is a sample from GitHub:&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/SolaceSamples/solace-samples-nodejs/blob/master/src/basic-samples/TopicSubscriber.js" target="_self"&gt;https://github.com/SolaceSamples/solace-samples-nodejs/blob/master/src/basic-samples/TopicSubscriber.js&lt;/A&gt;&lt;/P&gt;&lt;P&gt;How to run this code is explained by&amp;nbsp;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/38628"&gt;@r00k13d3v&lt;/a&gt;&amp;nbsp;in the reply below.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 00:01:27 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649098#M2027343</guid>
      <dc:creator>MioYasutake</dc:creator>
      <dc:date>2024-03-26T00:01:27Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649148#M2027344</link>
      <description>&lt;P&gt;Thanks for your help figuring out the issue.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 02:56:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649148#M2027344</guid>
      <dc:creator>ajmaradiaga</dc:creator>
      <dc:date>2024-03-26T02:56:43Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649698#M2027346</link>
      <description>&lt;P&gt;Yep guys. I've tried it and doesn't works&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":tired_face:"&gt;😫&lt;/span&gt; done in node.js.&lt;STRIKE&gt; I submited also the .env file to git if anyone wants to check it&lt;/STRIKE&gt;. I dunno. Appears at subscribed&amp;nbsp; and listening, then i trigger the message to be consumed but nothing happens.&lt;BR /&gt;git repo -&amp;nbsp;&lt;A href="https://github.com/xsansebastian/codejams" target="_blank" rel="noopener"&gt;https://github.com/xsansebastian/codejams&lt;/A&gt;&lt;BR /&gt;environment entries here&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":locked_with_key:"&gt;🔐&lt;/span&gt;&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":down_arrow:"&gt;⬇️&lt;/span&gt;&lt;/P&gt;&lt;LI-SPOILER&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;#&lt;/SPAN&gt;&lt;SPAN&gt;SOLACE VARIABLES ENV WEEK4&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_HOST&lt;/SPAN&gt;&lt;SPAN&gt;=tcps://mr-connection-plh11u5eu6a.messaging.solace.cloud:55443&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_USERNAME&lt;/SPAN&gt;&lt;SPAN&gt;=solace-cloud-client&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_PASSWORD&lt;/SPAN&gt;&lt;SPAN&gt;=mcrtp5mps5q12lfqed5kfndbi2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_VPN&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN&gt;=eu-fr-devbroker&lt;BR /&gt;&lt;BR /&gt;#SOLACE VARIABLES WEEK3&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_HOST&lt;/SPAN&gt;&lt;SPAN&gt;=mr-connection-plh11u5eu6a.messaging.solace.cloud&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_PORT&lt;/SPAN&gt;&lt;SPAN&gt;=9443&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_USER&lt;/SPAN&gt;&lt;SPAN&gt;=solace-cloud-client&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOLACE_PWD&lt;/SPAN&gt;&lt;SPAN&gt;=mcrtp5mps5q12lfqed5kfndbi2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/LI-SPOILER&gt;&lt;P&gt;I first executes week4, then week3. the message of subscription is now active corresponds to&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;SPAN&gt;sessionEvent &lt;/SPAN&gt;&lt;SPAN&gt;SUBSCRIPTION_OK&lt;/SPAN&gt;&lt;/DIV&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="xavisanse_0-1711453210953.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86534i8829211FC79D01E8/image-size/large?v=v2&amp;amp;px=999" role="button" title="xavisanse_0-1711453210953.png" alt="xavisanse_0-1711453210953.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks in advance for your help &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 11:51:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649698#M2027346</guid>
      <dc:creator>xavisanse</dc:creator>
      <dc:date>2024-03-26T11:51:54Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649747#M2027348</link>
      <description>&lt;P&gt;Borrowed heavily from:&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/SolaceSamples/solace-samples-nodejs/blob/master/src/basic-samples/TopicSubscriber.js" target="_self" rel="nofollow noopener noreferrer"&gt;https://github.com/SolaceSamples/solace-samples-nodejs/blob/master/src/basic-samples/TopicSubscriber...&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Processed through Event service:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="geek_0-1711454378234.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86570i88E103C9F28922A7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="geek_0-1711454378234.png" alt="geek_0-1711454378234.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Processed response:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="geek_1-1711454459838.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86576i8AF796006F35BFC9/image-size/medium?v=v2&amp;amp;px=400" role="button" title="geek_1-1711454459838.png" alt="geek_1-1711454459838.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;LI-CODE lang="abap"&gt;[11:54:49] Received message: "▼☺­{
  "id": "1e1e10dd-0302-4f9b-b785-6fa84a89e43e",
  "time": "2024-03-26T11:54:49.603Z",
  "type": "com.sap.dev-challenge.wk-4.processed.v1",
  "source": "https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/",
  "specversion": "1.0",
  "data": {
    "messageId": "6caee628-04a1-4565-ae1e-8eb6d4370c96",
    "sapCommunityId": "geek",
    "hash": "e92ac42a4f66aaf0665d9254d2494efe0f6a1c9d73e25029ec1c2b680d06b465"
  }
}"&lt;/LI-CODE&gt;</description>
      <pubDate>Tue, 26 Mar 2024 12:02:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649747#M2027348</guid>
      <dc:creator>geek61</dc:creator>
      <dc:date>2024-03-26T12:02:16Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649755#M2027349</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hi &lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/171996"&gt;@xavisanse&lt;/a&gt;&amp;nbsp;! &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I think you are calling the topic for week 3, you should call the one for week 4 (dev-challenge/week-4/${SAP_COMMUNITY_ID}/notification). &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I'll leave you the &lt;A href="https://ce-dev-challenge-wk4.cfapps.eu10.hana.ondemand.com/consumed-messages/webapp/index.html" target="_self"&gt;link&lt;/A&gt; to the monitor so you can see it when you make the request. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;See if that works for you.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Greetings!&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 12:04:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649755#M2027349</guid>
      <dc:creator>r00k13d3v</dc:creator>
      <dc:date>2024-03-26T12:04:10Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649772#M2027350</link>
      <description>&lt;P&gt;absolutely true &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; it happens when you are lazy coding in easter holidays &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; and reads in diagonal. now works &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; kudos for you&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 12:08:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649772#M2027350</guid>
      <dc:creator>xavisanse</dc:creator>
      <dc:date>2024-03-26T12:08:56Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649819#M2027351</link>
      <description>&lt;P&gt;awesomeCode:&lt;/P&gt;&lt;LI-SPOILER&gt;&lt;LI-CODE lang="javascript"&gt;const solaceConsumer = require('solclientjs');
require('dotenv').config();

const solaceHost = process.env.SOLACE_HOST;
const solaceUsername = process.env.SOLACE_USERNAME;
const solacePassword = process.env.SOLACE_PASSWORD;
const solaceVpn = process.env.SOLACE_VPN;
const solaceTopic ="dev-challenge/week-4/xavisanse/processed"

async function consumeAwesomeEvents() {
    const factoryProps = new solaceConsumer.SolclientFactoryProperties();
    factoryProps.profile = solaceConsumer.SolclientFactoryProfiles.version10;
    solaceConsumer.SolclientFactory.init(factoryProps);
    
    const session = solaceConsumer.SolclientFactory.createSession({
        url: solaceHost,
        vpnName: solaceVpn,
        userName: solaceUsername,
        password: solacePassword,        
    });
    session.on(solaceConsumer.SessionEventCode.UP_NOTICE, function (sessionEvent) {
        console.log('=== Successfully connected and ready to consume messages. ===');
        subscribeToTopic(session, solaceTopic);
    });

    session.on(solaceConsumer.SessionEventCode.CONNECT_FAILED_ERROR, function (sessionEvent) {
        console.log('=== Connection failed: ' + sessionEvent.infoStr + ' ===');
    });

    session.on(solaceConsumer.SessionEventCode.DISCONNECTED, function (sessionEvent) {
        console.log('=== Disconnected. ===');
    });

    session.on(solaceConsumer.SessionEventCode.SUBSCRIPTION_OK, function (sessionEvent) {
        console.log('=== Subscription is now active. ===');
    });

    session.on(solaceConsumer.SessionEventCode.SUBSCRIPTION_ERROR, function (sessionEvent) {
        console.log('=== Subscription failed: ' + sessionEvent.infoStr + ' ===');
    });

    session.on(solaceConsumer.SessionEventCode.MESSAGE, function (message) {
        console.log('Received message: ' + message.getBinaryAttachment());
    });

     session.connect();

     function subscribeToTopic(session, topic) {
        try {
            const topicObject = solaceConsumer.SolclientFactory.createTopicDestination(topic);
            console.log(`Subscribing to topic: ${topic}`);
            session.subscribe(topicObject, true, topic, 10000);
        } catch (error) {
            console.error("Error subscribing to topic: " + error.toString());
        }
     }
    }
consumeAwesomeEvents();&lt;/LI-CODE&gt;&lt;/LI-SPOILER&gt;&lt;P&gt;&lt;BR /&gt;hashValue =&amp;nbsp;8a48e62638474227a18d5e4cf0640b22486a513f0fd0e17c95f9d191bcea3ad1&lt;BR /&gt;&lt;BR /&gt;Console Output:&amp;nbsp;&lt;BR /&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="xavisanse_0-1711454983379.png" style="width: 999px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86594i6A628AD13DDDEEC8/image-size/large?v=v2&amp;amp;px=999" role="button" title="xavisanse_0-1711454983379.png" alt="xavisanse_0-1711454983379.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 12:13:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13649819#M2027351</guid>
      <dc:creator>xavisanse</dc:creator>
      <dc:date>2024-03-26T12:13:31Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650119#M2027353</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/107"&gt;@ajmaradiaga&lt;/a&gt;&amp;nbsp;!&lt;BR /&gt;Thanks a lot for this great opportunity to handle those CE!&lt;BR /&gt;&lt;BR /&gt;Here is my submission for this last week:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ruthiel_1-1711464713346.png" style="width: 661px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86796iF2F98B4690033E98/image-dimensions/661x1150?v=v2" width="661" height="1150" role="button" title="Ruthiel_1-1711464713346.png" alt="Ruthiel_1-1711464713346.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ruthiel_2-1711464736114.png" style="width: 662px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86797i452926A6A42938FC/image-dimensions/662x670?v=v2" width="662" height="670" role="button" title="Ruthiel_2-1711464736114.png" alt="Ruthiel_2-1711464736114.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ruthiel_3-1711464776024.png" style="width: 749px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86799i322EFEA86C0D2E20/image-dimensions/749x111?v=v2" width="749" height="111" role="button" title="Ruthiel_3-1711464776024.png" alt="Ruthiel_3-1711464776024.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ruthiel_4-1711464815107.png" style="width: 750px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86800i9DE3B1E94E5294BA/image-dimensions/750x85?v=v2" width="750" height="85" role="button" title="Ruthiel_4-1711464815107.png" alt="Ruthiel_4-1711464815107.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;The hash code is:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;EM&gt;90128999a98108464d992819bbfd01941afa25ec90c64089663498411af037fe&lt;/EM&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 14:56:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650119#M2027353</guid>
      <dc:creator>Ruthiel</dc:creator>
      <dc:date>2024-03-26T14:56:40Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650419#M2027356</link>
      <description>&lt;P&gt;"hash": "26105dec098dd4ee5410f3ba27e7f755f23551851888fc76f36364557d461b58"&lt;/P&gt;&lt;P&gt;Publish:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="emiliocampo_0-1711479329007.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86937i212917912B0170DA/image-size/medium?v=v2&amp;amp;px=400" role="button" title="emiliocampo_0-1711479329007.png" alt="emiliocampo_0-1711479329007.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="emiliocampo_1-1711479377292.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86938i6900F4F52F905318/image-size/medium?v=v2&amp;amp;px=400" role="button" title="emiliocampo_1-1711479377292.png" alt="emiliocampo_1-1711479377292.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Consume:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="emiliocampo_2-1711479437290.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86939i4F51EB73FAB36663/image-size/medium?v=v2&amp;amp;px=400" role="button" title="emiliocampo_2-1711479437290.png" alt="emiliocampo_2-1711479437290.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="emiliocampo_3-1711479469271.png" style="width: 400px;"&gt;&lt;img src="https://community.sap.com/t5/image/serverpage/image-id/86940i1C29E1C2D2367591/image-size/medium?v=v2&amp;amp;px=400" role="button" title="emiliocampo_3-1711479469271.png" alt="emiliocampo_3-1711479469271.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Hola &lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/107"&gt;@ajmaradiaga&lt;/a&gt;, thank you for this challenge! I'm not a pro-developer and it's been difficult for me, but by going through all the documentation, I've&amp;nbsp;been able to do it &lt;span class="lia-unicode-emoji" title=":grinning_face_with_big_eyes:"&gt;😃&lt;/span&gt;!!!&amp;nbsp;Gracias por informar del evento en Madrid!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Mar 2024 19:08:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650419#M2027356</guid>
      <dc:creator>emiliocampo</dc:creator>
      <dc:date>2024-03-26T19:08:17Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650700#M2027357</link>
      <description>&lt;P&gt;Great! As mentioned in the post... there is no need to reinvent the wheel.&lt;/P&gt;</description>
      <pubDate>Wed, 27 Mar 2024 06:44:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650700#M2027357</guid>
      <dc:creator>ajmaradiaga</dc:creator>
      <dc:date>2024-03-27T06:44:14Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650704#M2027358</link>
      <description>&lt;P&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/43545"&gt;@emiliocampo&lt;/a&gt;, gracias por participar en el challenge! En el evento vamos a familiarizarnos con AEM y tambien habra algo de codigo :-). Nos vemos el 6 de Mayo?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 27 Mar 2024 06:47:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650704#M2027358</guid>
      <dc:creator>ajmaradiaga</dc:creator>
      <dc:date>2024-03-27T06:47:28Z</dc:date>
    </item>
    <item>
      <title>Re: March Developer Challenge - CloudEvents: Week 4</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650712#M2027359</link>
      <description>&lt;P&gt;All valid submissions for week 4 so far...&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/38628"&gt;@r00k13d3v&lt;/a&gt;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/162022"&gt;@spirit2681&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/3763"&gt;@PriyankaChak&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/789"&gt;@MioYasutake&lt;/a&gt;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/9180"&gt;@geek61&lt;/a&gt;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/171996"&gt;@xavisanse&lt;/a&gt;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/120859"&gt;@Ruthiel&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/43545"&gt;@emiliocampo&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/874945"&gt;@pamoli_banerjee&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/45643"&gt;@Alpesa1990&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1395282"&gt;@Nagarajan-K&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/151481"&gt;@ajos&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/125253"&gt;@saitgunacorel&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;&lt;a href="https://community.sap.com/t5/user/viewprofilepage/user-id/11471"&gt;@MatLakaemper&lt;/a&gt;&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Mon, 01 Apr 2024 03:24:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/march-developer-challenge-cloudevents-week-4/m-p/13650712#M2027359</guid>
      <dc:creator>ajmaradiaga</dc:creator>
      <dc:date>2024-04-01T03:24:38Z</dc:date>
    </item>
  </channel>
</rss>

