Skip to content

[BUG] Using actual boolean instead of json string in boolean parameter causes bxml error #248

Description

@stephenreddek

Checklist

  • Have you provided a description of the bug?
  • Have you provided your Environment information?
  • Have you provided a sample code snippet?
  • Have you provided a stack trace?
  • Have you outlined the expected behavior?

Description

When receiving an initiate and responding with BXML to start a mult_channel recording, following the types results in a BXML failure on the bandwidth side. The error sends a call status event with cause invalid-bxml. The issue is setting mutli_channel to True instead of "true".

Environment Information

  • OS Version: Mac OS 15.4
  • SDK Version: 18.1.3
  • Environment: 3.11.10

Sample Code Snippet

       response = Response()

        response.add_verb(
            StartRecording(
                multi_channel=True, # this fails. To get this to work, I have to set it to `"true"`
                file_format="mp3",
            )
        )

        response.add_verb(Ring(duration=5))

        status_webhook_url = "ws://our-url"

        start_stream = StartStream(
            destination=f"wss://{ws_base_url}/ws/bandwidth/",
            stream_event_url=status_webhook_url,
            mode="bidirectional",
        )
        start_stream.add_verb(StreamParam(name="hotel_uuid", value=str(hotel.uuid)))
        start_stream.add_verb(StreamParam(name="canary_call_uuid", value=str(call.uuid)))

        response.add_verb(start_stream)
        response.add_verb(
            Pause(duration=86400) # hack to keep the call alive
        )

        logger.info("bandwidth_initiate_call.response", response=response.to_bxml())

        return HttpResponse(content=response.to_bxml(), status=200, content_type="application/xml")

Stack Trace

None

Expected Behavior

I would expect to be able to pass a native boolean instead of a string version to multi_channel

Suggested Fix

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions