Kamailio is a fast, reliable, and flexible SIP routing server that has been in continuous development since 2001. It started as SIP Express Router and was renamed to Kamailio in 2008. The presentation highlights Kamailio's features over the years, security best practices for VoIP including blocking calls based on source address, authentication failures, and traffic rates. VoIP security is important to protect customers and businesses from attacks targeting core platforms and equipment. Kamailio provides flexible modules to implement various security rules and policies to block threats.
Using Kamailio for Scalability and SecurityFred Posner
Fred Posner discusses using Kamailio, an open source SIP server, for scalability and security. Kamailio can handle thousands of call setups per second through its modular design. It supports features like load balancing, TLS, filtering, rate limiting, and topology hiding to improve security and scalability. Fred highlights how Kamailio's flexibility through modules and programming interfaces allows customizing it for various deployment needs.
Kamailio combined with Asterisk creates and incredibly robust and durable VoIP framework. With scalability and security, adding Kamailio to an asterisk deployment makes sense and saves money.
Kazoo APIs are an example of a restful web-service. They are APIs are provided over HTTP/HTTPS. Kazoo APIs mostly uses the JavaScript Object Notation (JSON) data format for most payloads!
CTO Karl Anderson discusses the state of Kazoo. This includes integrations with FreeSWITCH, erlang, and Kamailio. Reseller milestones include the release of whitelabeling, webhooks, migration, carriers, debugging, account management and more.
- The document discusses SIPLABS, a company located in Novosibirsk, Russia that provides professional Kazoo-based services and develops solutions for their clients.
- They have contributed code to Kazoo like call flow modules for eavesdropping, intercepting calls, and setting CIDs from lists.
- They are currently working on a device manager application and future contributions around CNAM lookup, XMPP integration, and a built-in DNS server.
Using Kamailio for Scalability and SecurityFred Posner
Fred Posner discusses using Kamailio, an open source SIP server, for scalability and security. Kamailio can handle thousands of call setups per second through its modular design. It supports features like load balancing, TLS, filtering, rate limiting, and topology hiding to improve security and scalability. Fred highlights how Kamailio's flexibility through modules and programming interfaces allows customizing it for various deployment needs.
Kamailio combined with Asterisk creates and incredibly robust and durable VoIP framework. With scalability and security, adding Kamailio to an asterisk deployment makes sense and saves money.
Kazoo APIs are an example of a restful web-service. They are APIs are provided over HTTP/HTTPS. Kazoo APIs mostly uses the JavaScript Object Notation (JSON) data format for most payloads!
CTO Karl Anderson discusses the state of Kazoo. This includes integrations with FreeSWITCH, erlang, and Kamailio. Reseller milestones include the release of whitelabeling, webhooks, migration, carriers, debugging, account management and more.
- The document discusses SIPLABS, a company located in Novosibirsk, Russia that provides professional Kazoo-based services and develops solutions for their clients.
- They have contributed code to Kazoo like call flow modules for eavesdropping, intercepting calls, and setting CIDs from lists.
- They are currently working on a device manager application and future contributions around CNAM lookup, XMPP integration, and a built-in DNS server.
IIT RTC Conference 2015, Chicago - talk on optimizations for SIP singaling traffic in mobile 3G/4G environments and how Kamailio can be used for such situations.
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Fred Posner
Presentation from AsteriskWorld 2017 at ITEXPO. Discussion of how I started with Asterisk and Kamailio as well as how to build Reliability, Scalability, and Security into your telephony platform.
2600Hz - Tuning Kazoo to 10,000 Handsets - KazooCon 20152600Hz
People love to talk about scale. Some vendors pitch that their systems easily support 100,000 simultaneous calls, or 500 calls per second, etc. The reality is, in the real world, people’s behaviors vary and the feature sets they use can cut these numbers down quickly. For example, ask that same vendor claiming 100,000 simultaneous calls if it can be done while call recording, call statistics and other features are turned on at the same time, and you’ll usually get a very different, cautious, qualified response.
In this presentation, we'll show you how to set up your infrastructure to support 100,000 simultaneous calls.
Voxter - Building Value with Kazoo - KazooCon 20152600Hz
The presenters introduced themselves as employees of Voxter, a 10 person company that has been a Kazoo user and contributor for 4 years. They operate Kazoo globally to provide VoIP services. They discussed contributions they have made and plan to make to Kazoo Core, including improvements to conferencing, call flows, and new WhApps for queue reporting and AMI emulation. They demonstrated some of these contributions, such as custom call flow variables and the Elasticsearch CDR module. Finally, they announced upcoming open source releases of the QUiLT and AMImulator WhApps.
Kamailioworld 2018 - Modular and test driven SIP Routing with LuaSebastian Damm
Kamailio Routing logic written in native Kamailio language or using a single monolithic file is neither easily maintainable nor testable. This talk shows a way to maintain a unit tested Kamailio routing configuration, reducing the fear of having your customers discover your bugs.
The document discusses the Zabbix API and Zabcon, a command line tool for interacting with the Zabbix API. Zabcon simplifies making API calls by allowing users to authenticate once and issue commands to retrieve host data, update host statuses, and create custom commands. The document demonstrates examples of using the Zabbix API directly and through Zabcon to retrieve host information and disable a host.
Dayton Turner of Voxter discussed their experience deploying Kazoo globally across multiple international points of presence (POPs). They discussed challenges with internationalization, availability across zones and clusters, and global operations. Voxter has integrated Kazoo with various third party tools and built custom GUIs. They also contribute code to Kazoo on GitHub and are building additional integrations to help the community.
Keep hearing about Plack and PSGI, and not really sure what they're for, and why they're popular? Maybe you're using Plack at work, and you're still copying-and-pasting `builder` lines in to your code without really knowing what's going on? What's the relationship between Plack, PSGI, and CGI? Plack from first principles works up from how CGI works, the evolution that PSGI represents, and how Plack provides a user-friendly layer on top of that.
PSGI is a Perl port of Python's WSGI and Ruby's Rack that defines a common interface between web servers and frameworks. Plack provides reference implementations of PSGI servers as well as middleware and utilities. This allows frameworks to run on many servers like standalone, FastCGI, and Apache using a common PSGI application interface. Plack is fast, supports many frameworks through adapters, and provides tools like Plackup and middleware to help build and test PSGI applications.
Phpconf 2013 - Agile Telephony Applications with PAMI and PAGIMarcelo Gornstein
This is the talk about PAMI and PAGI, and general telephony applications with PHP and Asterisk for the php conference argentina (phpconfar). The **complete** talk is available in the slides (in english), just download it (see above), and check out the slide notes for the complete text for each slide. Looking forward for your feedback. Enjoy :)
Automatic Kamailio Deployments With PuppetGiacomo Vacca
Description: Kamailio is a robust, powerful application; virtualization and cloud computing make it extremely easy and quick to setup Kamailio-based solutions. Scaling, geographic distribution and multiple environments (e.g. development, staging/QA, production), though, present some deployment challenges. Puppet provides a solution that dramatically cuts deployment time, reduces occurrences of errors, while at the same time documenting the configuration status. This presentation describes what we did in Truphone Labs to move from a freshly created virtual machine to a running Kamailio instance, automatically and in minutes. Firewall, nagios, syslog, monit, sec, and other related services are also automatically configured.
Plack is a superglue for Perl web frameworks that provides a common interface called PSGI (Perl Web Server Gateway Interface) inspired by WSGI and Rack. PSGI allows any web application or framework to run on any web server by providing a standard way for applications to communicate with servers. Plack also includes tools like Plackup for running PSGI applications from the command line and middleware for common functionality that can be shared across frameworks. Many existing Perl web frameworks have been adapted to run under PSGI through Plack.
2600hz WebRTC Meetup at WeWork, San Francisco, CA2600Hz
2600hz Engineers Peter Defebvre and Maxime Roux will lead an intense discussion on WebRTC, what it is and how to build your own phone. We will also discuss how 2600hz is able to provide enterprise grade connectivity to any HTML5 endpoint.
Distributed Developer Workflows using GitSusan Potter
This meetup I will be walking the audience through how to setup, configure and maintain distributed development workflows using Git (the distributed VCS developers either love or hate). Much of the workflows suggested here will be applicable to other dVCSes like Mercurial, Darcs and Bazaar.
This document provides an agenda for a talk on network automation using Ansible. The talk covers DevOps and NetDevOps concepts, the benefits of automation, common automation tools with a focus on Ansible, and how Ansible works. The document lists 10 topics that will be covered: 1) Devops/NetDevOps, 2) Why automation, 3) Tools for automation, 4) Why Ansible, 5) Ansible introduction, 6) Ansible Language Basics, 7) Ansible encryption/decryption, 8) How to run Ansible, 9) A case study on Ansible use at SBAC Bank, and 10) A hands-on lab configuration. Contact information is also provided for the speaker.
This document discusses deploying Plack web applications. It begins with an overview of the PSGI specification and how it allows various web frameworks like Catalyst and Dancer to run on different web servers through a common interface. It then discusses various options for the server environment including standalone HTTP servers like Starman and FastCGI servers. Finally, it covers useful Plack middleware for application environments, including modules for rate limiting, caching, authentication, and more.
Plack provides a common interface called PSGI (Perl Server Gateway Interface) that allows Perl web applications to run on different web servers. It includes tools like Plackup for running PSGI applications from the command line and middleware for adding functionality. Plack has adapters that allow many existing Perl web frameworks to run under PSGI. It also provides high performance PSGI servers and utilities for building and testing PSGI applications.
Presentation done at AstriCon 2014, Las Vegas, USA - how relevant can be SIP signaling traffic in a Real Time Communications platform and where pure SIP signaling servers such as Kamailio can be used.
Cluecon 2015
Use of external controller applications to fetch the next routes and let Kamailio handle the SIP layer.
Example with Node.js external application and evapi+rtjson modules in Kamailio
IIT RTC Conference 2015, Chicago - talk on optimizations for SIP singaling traffic in mobile 3G/4G environments and how Kamailio can be used for such situations.
Using Asterisk and Kamailio for Reliable, Scalable and Secure Communication S...Fred Posner
Presentation from AsteriskWorld 2017 at ITEXPO. Discussion of how I started with Asterisk and Kamailio as well as how to build Reliability, Scalability, and Security into your telephony platform.
2600Hz - Tuning Kazoo to 10,000 Handsets - KazooCon 20152600Hz
People love to talk about scale. Some vendors pitch that their systems easily support 100,000 simultaneous calls, or 500 calls per second, etc. The reality is, in the real world, people’s behaviors vary and the feature sets they use can cut these numbers down quickly. For example, ask that same vendor claiming 100,000 simultaneous calls if it can be done while call recording, call statistics and other features are turned on at the same time, and you’ll usually get a very different, cautious, qualified response.
In this presentation, we'll show you how to set up your infrastructure to support 100,000 simultaneous calls.
Voxter - Building Value with Kazoo - KazooCon 20152600Hz
The presenters introduced themselves as employees of Voxter, a 10 person company that has been a Kazoo user and contributor for 4 years. They operate Kazoo globally to provide VoIP services. They discussed contributions they have made and plan to make to Kazoo Core, including improvements to conferencing, call flows, and new WhApps for queue reporting and AMI emulation. They demonstrated some of these contributions, such as custom call flow variables and the Elasticsearch CDR module. Finally, they announced upcoming open source releases of the QUiLT and AMImulator WhApps.
Kamailioworld 2018 - Modular and test driven SIP Routing with LuaSebastian Damm
Kamailio Routing logic written in native Kamailio language or using a single monolithic file is neither easily maintainable nor testable. This talk shows a way to maintain a unit tested Kamailio routing configuration, reducing the fear of having your customers discover your bugs.
The document discusses the Zabbix API and Zabcon, a command line tool for interacting with the Zabbix API. Zabcon simplifies making API calls by allowing users to authenticate once and issue commands to retrieve host data, update host statuses, and create custom commands. The document demonstrates examples of using the Zabbix API directly and through Zabcon to retrieve host information and disable a host.
Dayton Turner of Voxter discussed their experience deploying Kazoo globally across multiple international points of presence (POPs). They discussed challenges with internationalization, availability across zones and clusters, and global operations. Voxter has integrated Kazoo with various third party tools and built custom GUIs. They also contribute code to Kazoo on GitHub and are building additional integrations to help the community.
Keep hearing about Plack and PSGI, and not really sure what they're for, and why they're popular? Maybe you're using Plack at work, and you're still copying-and-pasting `builder` lines in to your code without really knowing what's going on? What's the relationship between Plack, PSGI, and CGI? Plack from first principles works up from how CGI works, the evolution that PSGI represents, and how Plack provides a user-friendly layer on top of that.
PSGI is a Perl port of Python's WSGI and Ruby's Rack that defines a common interface between web servers and frameworks. Plack provides reference implementations of PSGI servers as well as middleware and utilities. This allows frameworks to run on many servers like standalone, FastCGI, and Apache using a common PSGI application interface. Plack is fast, supports many frameworks through adapters, and provides tools like Plackup and middleware to help build and test PSGI applications.
Phpconf 2013 - Agile Telephony Applications with PAMI and PAGIMarcelo Gornstein
This is the talk about PAMI and PAGI, and general telephony applications with PHP and Asterisk for the php conference argentina (phpconfar). The **complete** talk is available in the slides (in english), just download it (see above), and check out the slide notes for the complete text for each slide. Looking forward for your feedback. Enjoy :)
Automatic Kamailio Deployments With PuppetGiacomo Vacca
Description: Kamailio is a robust, powerful application; virtualization and cloud computing make it extremely easy and quick to setup Kamailio-based solutions. Scaling, geographic distribution and multiple environments (e.g. development, staging/QA, production), though, present some deployment challenges. Puppet provides a solution that dramatically cuts deployment time, reduces occurrences of errors, while at the same time documenting the configuration status. This presentation describes what we did in Truphone Labs to move from a freshly created virtual machine to a running Kamailio instance, automatically and in minutes. Firewall, nagios, syslog, monit, sec, and other related services are also automatically configured.
Plack is a superglue for Perl web frameworks that provides a common interface called PSGI (Perl Web Server Gateway Interface) inspired by WSGI and Rack. PSGI allows any web application or framework to run on any web server by providing a standard way for applications to communicate with servers. Plack also includes tools like Plackup for running PSGI applications from the command line and middleware for common functionality that can be shared across frameworks. Many existing Perl web frameworks have been adapted to run under PSGI through Plack.
2600hz WebRTC Meetup at WeWork, San Francisco, CA2600Hz
2600hz Engineers Peter Defebvre and Maxime Roux will lead an intense discussion on WebRTC, what it is and how to build your own phone. We will also discuss how 2600hz is able to provide enterprise grade connectivity to any HTML5 endpoint.
Distributed Developer Workflows using GitSusan Potter
This meetup I will be walking the audience through how to setup, configure and maintain distributed development workflows using Git (the distributed VCS developers either love or hate). Much of the workflows suggested here will be applicable to other dVCSes like Mercurial, Darcs and Bazaar.
This document provides an agenda for a talk on network automation using Ansible. The talk covers DevOps and NetDevOps concepts, the benefits of automation, common automation tools with a focus on Ansible, and how Ansible works. The document lists 10 topics that will be covered: 1) Devops/NetDevOps, 2) Why automation, 3) Tools for automation, 4) Why Ansible, 5) Ansible introduction, 6) Ansible Language Basics, 7) Ansible encryption/decryption, 8) How to run Ansible, 9) A case study on Ansible use at SBAC Bank, and 10) A hands-on lab configuration. Contact information is also provided for the speaker.
This document discusses deploying Plack web applications. It begins with an overview of the PSGI specification and how it allows various web frameworks like Catalyst and Dancer to run on different web servers through a common interface. It then discusses various options for the server environment including standalone HTTP servers like Starman and FastCGI servers. Finally, it covers useful Plack middleware for application environments, including modules for rate limiting, caching, authentication, and more.
Plack provides a common interface called PSGI (Perl Server Gateway Interface) that allows Perl web applications to run on different web servers. It includes tools like Plackup for running PSGI applications from the command line and middleware for adding functionality. Plack has adapters that allow many existing Perl web frameworks to run under PSGI. It also provides high performance PSGI servers and utilities for building and testing PSGI applications.
Presentation done at AstriCon 2014, Las Vegas, USA - how relevant can be SIP signaling traffic in a Real Time Communications platform and where pure SIP signaling servers such as Kamailio can be used.
Cluecon 2015
Use of external controller applications to fetch the next routes and let Kamailio handle the SIP layer.
Example with Node.js external application and evapi+rtjson modules in Kamailio
This document contains contact information for Tropo and Adam Kalsey, including their website, email address, and Twitter handles. It also includes images and mentions of copper wires, expensive infrastructure, and Flickr.
Fosdem 2016, Brussels, Belgium
A developer perspective of the components in the C code that impact the performances of the signaling servers, applied for Kamailio (https://www.kamailio.org), reflecting how they can be tuned from configuration file to increase the capacity of a SIP server.
A gentle introduction to Observability and how to setup a highly available monitoring platform across multiple datacenters.
During this talk we will investigate how we can setup and monitor an monitoring setup across 2 DCs using Prometheus, Loki, Tempo, Alertmanager and Grafana. monitoring some services with some lessons learned along the way.
OSMC 2014: Monitoring VoIP Systems | Sebastian DammNETWAYS
While delivering VoIP solutions to customers for more than ten years, at sipgate we have gained experience in monitoring our VoIP setup. The talk will give an insight on how to monitor Asterisk, Kamailio, Yate and other vital parts of our setup through standard checks and own scripts. We will not only show how to monitor standard SIP, but also how to detect bottlenecks and misfunctions.
This document discusses how Sebastian Damm's company monitors their VoIP systems including Asterisk, Kamailio, Yate, and RTP proxies. They use Icinga for system monitoring with over 1,000 hosts and 5,000 services checked. Custom scripts monitor SIP connectivity and extract data from Asterisk via its manager interface and from Kamailio via XMLRPC. Monitoring checks various metrics like uptime, memory usage, call volume and answer seizure ratio (ASR).
Kamailio 5.0 allows writing full routing logic in Lua scripting language, opening the door for easy integration with external services and increasing the flexibility of optimizing SIP routing.
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...Aman Kohli
The power of Gatling is the DSL it provides to allow writing meaningful and expressive tests. We provide an overview of the framework, a description of their development environment and goals, and present their test results.
Source code available https://github.com/lawlessc/random-response-time
This document discusses advanced data communication between PHP and Flash using Zend AMF. It provides an overview of Zend AMF features like fast serialization, authentication, authorization using ACL, and database integration. It also outlines future plans to improve documentation, implement long polling, optimize performance, and develop a service browser. Resources are listed for downloading Zend AMF, Flash Builder, and reading additional articles on using Zend AMF with PHP and Flash.
SIP Attack Handling (Kamailio World 2021)Fred Posner
This document discusses SIP attack handling in Kamailio. It provides an overview of common SIP attacks like denial of service and examples of attack traffic. It then outlines several Kamailio modules that can help mitigate attacks, including PIKE for rate limiting, SECFILTER for blocking lists, and HTABLE for temporary blocking. The document also discusses Kamailio configuration options for attack handling using these modules as well as other techniques like Fail2Ban, iptables-api, and APIBAN for sharing block lists.
The document describes how to configure static flows on an OpenFlow switch using OpenIRIS to mirror DNS query and response traffic. It provides the required properties and examples of CURL commands to add static flows that will mirror DNS query requests to the controller and DNS response traffic back to the original source. It also provides examples for deleting specific static flows, all static flows, or all static flows for a specific switch.
Chloe is a realtime web server that provides a simple way to build chat services. Developers include the Chloe JavaScript file in their web pages. They can then instantiate a Chloe object to connect to the server and send/receive messages. When a message is submitted, the server code sends the data to Chloe's broadcast URL, and Chloe distributes the message to all connected clients. Developers can also subscribe to specific channels to receive messages tagged with that channel name. This allows building chat features without complex websockets or polling logic.
Sylvain Baubeau presents Skydive, a real-time network analyzer that provides troubleshooting and monitoring of complex SDN environments. Skydive captures network topology and traffic flows to analyze performance issues. It supports OpenFlow, OpenStack, Kubernetes, and is designed to be flow-centric, lightweight, API-driven and SDN-agnostic. Skydive aims to help network operators detect issues, understand traffic patterns, and perform capacity planning.
Puppet is an open source configuration management tool that can be used to automate the configuration and management of infrastructure and applications. It uses a client-server architecture and declarative language to define and enforce the desired state of systems. Other HashiCorp tools like Packer, Terraform, Vault and Nomad can integrate with Puppet for tasks like infrastructure provisioning, secrets management and workload orchestration. Bolt is a task orchestration tool from Puppet that can be used to automate operational tasks across infrastructure defined by tools like Terraform. Consul provides service discovery and configuration for the Puppet infrastructure.
1) Nginx is a popular and productive open source HTTP and reverse proxy server that can serve as a front end server.
2) As a front end server, nginx processes requests for static resources, proxies requests to dynamic applications in the back end, and can perform tasks like compression, caching, uploading/downloading, and image processing.
3) The document provides examples of basic nginx configuration for serving static files, proxying requests to backends, setting up virtual hosts, compressing responses, and generating thumbnails.
Presto is an open source distributed SQL query engine for running interactive analytic queries against data sources of all sizes ranging from gigabytes to petabytes. It is written in Java and uses a pluggable backend. Presto is fast due to code generation and runtime compilation techniques. It provides a library and framework for building distributed services and fast Java collections. Plugins allow Presto to connect to different data sources like Hive, Cassandra, MongoDB and more.
Telnexus CEO Vernon Keenan discuss how he built the Managed Service Provider Telnexus from the ground up and the lessons he has learned in the process.
VirtualPBX - Back Office, Delivering Voice in a Competitive Market - KazooCon...2600Hz
In a competitive market, high quality voice services alone are rarely enough. Lon will speak about the customer lifecycle, back office systems from Sales to CRM to deployment, and how to drive profitable growth while delivering an excellent customer experience.
Product Director Aaron Gunn discusses billing options for SaaS and IaaS customers. This includes CDR API, AMPQ, and integrating VoIP billing platforms.
The document discusses various aspects of billing and call rating in Kazoo, including:
1. Common billing concepts like subscriptions, usage limits, overage charges, and payment types.
2. How Kazoo implements call rating by matching calls to rate decks and calculating costs.
3. How Kazoo handles call authorization and limits through features like trunk allocation, prepaid balances, and tracking account usage in temporal databases.
This is an overview of VoIP fraud, different types of fraud and what telecommunication carriers are doing to combat this issue. Types of fraud include International / Premium Number Fraud, Impersonation / Social Engineering, Service Degradation / Denial of service. Presented by Mark Magnusson at KazooCon 2015.
This document provides a summary of Karl Anderson's presentation at Kazoocon14. Some of the key areas discussed include improvements to Kamailio and FreeSWITCH dependencies, the Kazoo installation process, the Monster UI, Provisioner, Project Phonebook, internationalization efforts, and upcoming work on statistics, federation, and hosted Kazoo services. The presentation outlines progress made over the past year and outlines an ambitious roadmap for further developing and enhancing the Kazoo platform.
Jean-Roche Maitre and Joris TIrado discuss the basics of coding a Monster app, which will track all new call events happening on a Kazoo Account. The goal is to see the events in our app as we place calls from a softphone!
This document discusses the history and technology of SMS messaging. It provides an overview of Ziron, a messaging carrier founded in 2011. The document outlines the key events in SMS history from 1984 to present. It also reviews SMS technology standards, common terminology, and how SMS messages are routed via SS7. The document demonstrates how to build a basic auto-reply SMS application using Ziron's API and PHP library.
KazooCon 2014 - Range Networks, the Future of Mobile 2600Hz
This document discusses the potential for software innovation in mobile networks by adopting a more flexible, software-defined approach inspired by the internet. It argues that current mobile network architectures are antiquated and rigid, inhibiting innovation, while the internet has thrived on open standards and flexibility. The OpenBTS platform is presented as an example of a new type of mobile infrastructure that uses software to implement network functions from layers 1-7, allowing for more rapid innovation, protocol agility, and new business models like IoT applications.
KazooCon 2014 - Control Cellular Service via APIs2600Hz
2600hz engineer Chris Cole demos the advanced functionality of our API. Currently there are tons of callflow options that include ring a device, ring a user, manual presence, pivot, etc. Chris explores this functionality in his live demo.
WebRTC (Web Real-Time Communication) is an API definition drafted by the World Wide Web Consortium (W3C) that supports browser-to-browser applications for voice calling, video chat, and P2P file sharing without plugins. Web RTC is a young but is a promising & powerful technology. The possibilities are endless that includes HD audio, video, file sharing, screen sharing, conference application and more. www.2600hz.com
KazooCon 2014 - Building Your Business: Behind the Numbers!2600Hz
2600hz Sales Manager Angela Lambert discusses
Compeetor pricing for your customers, how consumers understand VoIP as a product & VoIP pricing and what this means for you as a provider
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfTechgropse Pvt.Ltd.
In this blog post, we'll delve into the intersection of AI and app development in Saudi Arabia, focusing on the food delivery sector. We'll explore how AI is revolutionizing the way Saudi consumers order food, how restaurants manage their operations, and how delivery partners navigate the bustling streets of cities like Riyadh, Jeddah, and Dammam. Through real-world case studies, we'll showcase how leading Saudi food delivery apps are leveraging AI to redefine convenience, personalization, and efficiency.
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
CAKE: Sharing Slices of Confidential Data on BlockchainClaudio Di Ciccio
Presented at the CAiSE 2024 Forum, Intelligent Information Systems, June 6th, Limassol, Cyprus.
Synopsis: Cooperative information systems typically involve various entities in a collaborative process within a distributed environment. Blockchain technology offers a mechanism for automating such processes, even when only partial trust exists among participants. The data stored on the blockchain is replicated across all nodes in the network, ensuring accessibility to all participants. While this aspect facilitates traceability, integrity, and persistence, it poses challenges for adopting public blockchains in enterprise settings due to confidentiality issues. In this paper, we present a software tool named Control Access via Key Encryption (CAKE), designed to ensure data confidentiality in scenarios involving public blockchains. After outlining its core components and functionalities, we showcase the application of CAKE in the context of a real-world cyber-security project within the logistics domain.
Paper: https://doi.org/10.1007/978-3-031-61000-4_16
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxSitimaJohn
Ocean Lotus cyber threat actors represent a sophisticated, persistent, and politically motivated group that poses a significant risk to organizations and individuals in the Southeast Asian region. Their continuous evolution and adaptability underscore the need for robust cybersecurity measures and international cooperation to identify and mitigate the threats posed by such advanced persistent threat groups.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
3. kamailio
voip wild world
SIP signalling routing
• fast
• reliable
• flexible
In other words
• not initiating calls
• not answering calls
• no audio-video processing
4. kamailio
voip wild world
2002 Jun 2005 Jul 2008 Aug 2008 Nov 2008
SIP Express Router (SER)
OpenSER Kamailio
Other Forks...
Same application: Kamailio - SER
Oct 2009 Jan 2010
v3.0.0
Integration
Completed
v1.5.0
Sep 2011Sep 2001
First
Line
Of
Code
Open
Source
GPL
FhG
Fokus
Institute
Berlin
rename
Awarded
Best Open
Source
Networking
Software
2009
By InfoWorld
10
Years
Jun 2012
v3.3.0
ITSPA
UK
Award
Mar 2013
v4.0.0
Kamailio
v4.1.0
Dec 2013
………. v4.2.0
Oct 2014
now over 100 on github
June 2015
v4.3.0
Continuous development since 2001!
a very large set of feature
12. kamailio
voip wild world
❖ no universal solution
❖ security is a 24/7 duty
❖ very important
❖ ability to adjust rules as needed
❖ agile monitoring and alerting mechanisms
❖ have access to a flexible toolset to enable new security policies
Expect new type of attacks every day
13. kamailio
voip wild world
❖ monitor, detect and block high traffic volume from same source address
❖ monitor and detect too many failed authentications in a row
❖ allow traffic only from your customers regions
❖ alert, block or two factor authentication for calls to expensive destinations
❖ alert and limit on number of active calls
❖ alert and limit on the duration for active calls
❖ alert and limit on the cost of overall calls
❖ check and allow only strong passwords
❖ enable TLS
Always good to consider
14. kamailio
voip wild world
❖ allow calls only from registered users
❖ INVITE with To tag must match an existing dialog
❖ limit number of allowed registrations
❖ restrict allowed User-Agent header
❖ restrict capabilities when subscriber not in home country
❖ rules based on time frames
Extra little bits
21. kamailio
voip wild world
❖ pike or pipelimit and htable modules — htable can be replaced by fail2ban
Block addresses due to high traffic
#!ifdef WITH_ANTIFLOOD
loadmodule "htable.so"
loadmodule "pike.so"
#!endif
#!ifdef WITH_ANTIFLOOD
# ----- pike params -----
modparam("pike", "sampling_time_unit", 2)
modparam("pike", "reqs_density_per_unit", 16)
modparam("pike", "remove_latency", 4)
# ----- htable params -----
# ip ban htable with autoexpire after 5 minutes
modparam("htable", "htable", "ipban=>size=8;autoexpire=300;")
#!endif
# Per SIP request initial checks
route[REQINIT] {
#!ifdef WITH_ANTIFLOOD
# flood dection from same IP and traffic ban for a while
# be sure you exclude checking trusted peers, such as pstn gateways
# - local host excluded (e.g., loop to self)
if(src_ip!=myself) {
if($sht(ipban=>$si)!=$null) {
# ip is already blocked
xdbg("request from blocked IP - $rm from $fu (IP:$si:$sp)n");
exit;
}
if (!pike_check_req()) {
xlog("pike blocking $rm from $fu (IP:$si:$sp)n");
$sht(ipban=>$si) = 1;
exit;
}
}
if($ua =~ "friendly-scanner") {
sl_send_reply("200", "OK");
exit;
}
#!endif
…
22. kamailio
voip wild world
❖ using pipelimit
loadmodule "pipelimit.so"
# ----- pipelimit params -----
modparam("pipelimit", "timer_interval", 1)
modparam("pipelimit", "reply_code", 505)
modparam("pipelimit", "reply_reason", "CPS limit exceeded")
modparam("pipelimit", “db_url", DBURL)
modparam("pipelimit", "rlp_table_name", "traffic_limits")
request_route {
…
$var(pipe) = “all-traffic”;
if (!pl_check(“$var(pipe)")) {
pl_drop();
exit;
}
…
}
Block addresses due to high traffic
23. kamailio
voip wild world
Block too many failed authentications
route[AUTH] {
if( $sht(userban=>$au::auth_count) >= 10 ) {
$var(exp) = $Ts - 900;
if($sht(userban=>$au::last_auth) > $var(exp)) {
xlog("L_DBG", "auth - id[$mi] m[$rm] r[0] [$fu -> $ru ($tu)]: User blocked - IP: $sin");
sl_send_reply("403", "Try later");
exit;
} else {
$sht(userban=>$au::auth_count) = 0;
}
}
if(!(is_present_hf("Authorization") || is_present_hf("Proxy-Authorization"))) {
auth_challenge("$fd", "0");
exit;
}
# authenticate requests
if (!auth_check("$fd", "subscriber", "1")) {
$var(auth_count) = $shtinc(userban=>$au::auth_count);
if( $var(auth_count) >= 10 )
xlog("many failed auth in a row - [$rm] from <$fu> src ip: $sin");
$sht(userban=>$au::last_auth) = $Ts;
auth_challenge("$fd", "0");
exit;
}
$sht(userban=>$au::auth_count) = $null;
# user authenticated - remove auth header
if(!is_method("REGISTER|PUBLISH"))
consume_credentials();
xlog("L_INFO", "id[$mi] m[$rm] r[0] [$fu -> $ru ($tu)]: User $fu Authenticated Correctlyn");
return;
}
Rules:
- allow 10 failed authentications
- block user for 15 minutes
- reset when authentication is ok
- could be combined with IP ban
24. kamailio
voip wild world
❖ dialog, htable or sqlops modules
Restrict number of active calls
# active calls/dialog management
# execute route(DIALOG) inside route(RELAY) before t_relay()
route[DIALOG] {
if (is_method("CANCEL")
|| (has_totag() && is_method("INVITE|BYE|ACK"))) {
dlg_manage();
return;
}
if (is_method("INVITE") && !has_totag() && !isflagset(FLT_ACALLS)) {
if( $xavp(caller[0]=>active_calls) != $null
&& $xavp(caller[0]=>active_calls) > 0 ) {
if(!get_profile_size("caller", "$fU@$fd", "$var(acsize)")) {
send_reply("500", "No more active calls");
exit;
}
if($var(acsize)>=$xavp(caller[0]=>active_calls)) {
send_reply("403", "No more active calls");
exit;
}
set_dlg_profile("caller", "$fU@$fd");
}
setflag(FLT_ACALLS);
dlg_manage();
}
}
$xavp(caller=>active_calls) = 1;
25. kamailio
voip wild world
❖ track active calls and history, then rise alarms based on various rules
❖ it’s all about caching data for a while and searching
Do It Yourself
❖ four important events
❖ a new call: initial INVITE
❖ call is not answered: 300 or higher response code to initial INVITE (covers CANCEL)
❖ call is answered: 200 ok to initial INVITE
❖ call is terminated: BYE
26. kamailio
voip wild world
❖ track active calls and history, then rise alarms based on various rules
❖ it’s all about caching data for a while and searching
❖ initial request of dialog (new call)
❖ check if active calls limit is reached, if yes, alert/reject
❖ check if limit per day is reached, if yes, alert/reject
❖ requests within dialog
❖ remove from active calls
❖ Lua: flexible language and fast embedded interpreter in Kamailio
❖ MongoDB: fast storage, replication, easy access from many Kamailio instances as well
as from web portal due to JSON documents
❖ maybe I will get the time for it, watch the news …
DIY: Kamailio, Lua and MongoDB
31. Kamailio World 2016 - Planning a Special Edition
Kamailio Project
15 YEARS OF DEVELOPMENT
2001-2016
from SER to Kamailio
www.kamailioworld.com
Thank you!
Questions?
@miconda