If you follow the steps in Best Practice - CSS Push but still find that the push is not successful, please troubleshoot common push issues as instructed in this document.
Your push can succeed only if your domain name has a CNAME record that points to a Tencent Cloud address. You can check whether an added push domain name has a CNAME record in the CNAME column of Domain Management. You will see a green check if the CNAME record is configured, as shown below:
If your domain name does not have a CNAME record, you can configure one.
RTMP push uses the 1935 port by default. If the port is not enabled on the firewall of the network for testing, you will be unable to connect to the server. You can check whether this issue caused the push failure by switching to another network (a 4G network for example).
To prevent the traffic from being stolen, some clients may set
txTime (the validity period of the push URL) to a very short period, such as 5 minutes from the current time. This is unnecessary as the
txSercet signature guarantees security. If the validity period is too short, the push URL may expire after a live stream is interrupted due to network disconnection, and consequently the push cannot be resumed.
You are advised to set
txTime to 12 or 24 hours from the current time, longer than a common live streaming session.
To ensure security, Tencent Cloud requires configuring hotlink protection for all push URLs and rejects all hotlink protection URLs that have expired or are miscalculated. If a push is rejected, the CSS SDK will throw a PUSH_WARNING_SERVER_DISCONNECT event.
See Best Practice > CSS Push for how to get reliable push URLs.
One push URL can have only one push client at a time, and a second client that tries to push using this URL will be rejected by Tencent Cloud. In this case, you can log in to the CSS console and check whether the stream is already being pushed in Stream Management > Live Streams. You can also check whether the stream is forbidden in Forbidden Streams.