defaults.cc (1556B)
1 /* 2 * Copyright 2012 The WebRTC Project Authors. All rights reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 #include "examples/peerconnection/client/defaults.h" 12 13 #include <cstdint> 14 #include <cstdlib> 15 #include <iterator> 16 #include <string> 17 18 #ifdef WIN32 19 #include <winsock2.h> 20 #else 21 #include <unistd.h> 22 #endif 23 24 const char kAudioLabel[] = "audio_label"; 25 const char kVideoLabel[] = "video_label"; 26 const char kStreamId[] = "stream_id"; 27 const uint16_t kDefaultServerPort = 8888; 28 29 std::string GetEnvVarOrDefault(const char* env_var_name, 30 const char* default_value) { 31 std::string value; 32 const char* env_var = getenv(env_var_name); 33 if (env_var) 34 value = env_var; 35 36 if (value.empty()) 37 value = default_value; 38 39 return value; 40 } 41 42 std::string GetPeerConnectionString() { 43 return GetEnvVarOrDefault("WEBRTC_CONNECT", "stun:stun.l.google.com:19302"); 44 } 45 46 std::string GetDefaultServerName() { 47 return GetEnvVarOrDefault("WEBRTC_SERVER", "localhost"); 48 } 49 50 std::string GetPeerName() { 51 char computer_name[256]; 52 std::string ret(GetEnvVarOrDefault("USERNAME", "user")); 53 ret += '@'; 54 if (gethostname(computer_name, std::size(computer_name)) == 0) { 55 ret += computer_name; 56 } else { 57 ret += "host"; 58 } 59 return ret; 60 }