Idris Brhane

Idris Brhane


Twilio: How to Connect with Existing Voice Assistant

Today’s post serves the purpose of explaining Twilio’s recent bidirectional streaming feature, the very feature which made it possible to receive the call audio while still being able to send audio for playback asynchronously.

This was not possible before, when communication had to be unidirectional: either you could receive the voice audio but could not respond to it, or you could send audio to the call but not get anything back.

Let’s get right into the tutorial. One needs to understand three things if he or she hopes to use Twilio in conjunction with her own Voice Assistant (abbreviated VA).

  1. How the backend of the VA receives the user’s voice and returns audio responses (HTTP or Websocket? Streaming or one-off? In which audio format?)

  2. How to serve calls using a node.js server (How can a phone call to a twilio number perform a request to a Node server?)

  3. How to open and use a bidirectional communication channel between node.js code and the actual phone call (Through which protocol?)

#nodejs #chatbots #cloud-telephony #node

What is GEEK

Buddha Community

Twilio: How to Connect with Existing Voice Assistant

Being Tony Stark: How To Build A Voice Assistant Of Your Own?

I have always fantasized about flying in the iron man suit and had wondered all my day how cool that would be. Also, the personal voice assistant Tony has is super cool. So today, my responsibility is to make you feel a bit more like a tech maniac like tony!

This article is dedicated to tony! We love you 3000 <3.

In this article, we will be focusing on forging a basic and easy voice assistant of our own. It would be a customizable voice assistant which you surely tweak with, as per your desires and requirements.

We will be making one with the following advancements:

  1. Speech Recognition
  2. Google text to speech
  3. Window Automation
  4. Web Browser automation.

Let the name be Jarvis, for the time being.n.

#developers corner #artificial intelligence #personal assistant #voice analytics #voice assistant #voice recogntion

PostgreSQL Connection Pooling: Part 4 – PgBouncer vs. Pgpool-II

In our previous posts in this series, we spoke at length about using PgBouncer  and Pgpool-II , the connection pool architecture and pros and cons of leveraging one for your PostgreSQL deployment. In our final post, we will put them head-to-head in a detailed feature comparison and compare the results of PgBouncer vs. Pgpool-II performance for your PostgreSQL hosting !

The bottom line – Pgpool-II is a great tool if you need load-balancing and high availability. Connection pooling is almost a bonus you get alongside. PgBouncer does only one thing, but does it really well. If the objective is to limit the number of connections and reduce resource consumption, PgBouncer wins hands down.

It is also perfectly fine to use both PgBouncer and Pgpool-II in a chain – you can have a PgBouncer to provide connection pooling, which talks to a Pgpool-II instance that provides high availability and load balancing. This gives you the best of both worlds!

Using PgBouncer with Pgpool-II - Connection Pooling Diagram

PostgreSQL Connection Pooling: Part 4 – PgBouncer vs. Pgpool-II


Performance Testing

While PgBouncer may seem to be the better option in theory, theory can often be misleading. So, we pitted the two connection poolers head-to-head, using the standard pgbench tool, to see which one provides better transactions per second throughput through a benchmark test. For good measure, we ran the same tests without a connection pooler too.

Testing Conditions

All of the PostgreSQL benchmark tests were run under the following conditions:

  1. Initialized pgbench using a scale factor of 100.
  2. Disabled auto-vacuuming on the PostgreSQL instance to prevent interference.
  3. No other workload was working at the time.
  4. Used the default pgbench script to run the tests.
  5. Used default settings for both PgBouncer and Pgpool-II, except max_children*. All PostgreSQL limits were also set to their defaults.
  6. All tests ran as a single thread, on a single-CPU, 2-core machine, for a duration of 5 minutes.
  7. Forced pgbench to create a new connection for each transaction using the -C option. This emulates modern web application workloads and is the whole reason to use a pooler!

We ran each iteration for 5 minutes to ensure any noise averaged out. Here is how the middleware was installed:

  • For PgBouncer, we installed it on the same box as the PostgreSQL server(s). This is the configuration we use in our managed PostgreSQL clusters. Since PgBouncer is a very light-weight process, installing it on the box has no impact on overall performance.
  • For Pgpool-II, we tested both when the Pgpool-II instance was installed on the same machine as PostgreSQL (on box column), and when it was installed on a different machine (off box column). As expected, the performance is much better when Pgpool-II is off the box as it doesn’t have to compete with the PostgreSQL server for resources.

Throughput Benchmark

Here are the transactions per second (TPS) results for each scenario across a range of number of clients:

#database #developer #performance #postgresql #connection control #connection pooler #connection pooler performance #connection queue #high availability #load balancing #number of connections #performance testing #pgbench #pgbouncer #pgbouncer and pgpool-ii #pgbouncer vs pgpool #pgpool-ii #pooling modes #postgresql connection pooling #postgresql limits #resource consumption #throughput benchmark #transactions per second #without pooling

Through Assistive Technology Software Services New Opportunities for Needy Individuals

The main expression of disability changes with the different nature of the suffering individual’s environment. This is why many people believe that assistive technology is part of an environment that helps in reducing the expressions of disable people. Assistive technology is used to build more accessibility, enhance the communication process, be able to afford electronic devices and gain control over them. Assistive technology solutions are also able to modify homes for access to outside activities, these also help with personal care activities, helps in enhancing the individual’s mobility, and to modify easier solutions into workplaces and schools. Assistive technology solutions require the help of different people to make evaluations about the types of assistive technology services. Most of these services are for individuals who have cognitive, physical or sensory conditions. The improvement of these functions and the participation of individuals in activities is a must. These evaluations are only done by a team of people who have been trained in therapy, medicine, engineering, etc. For more details click on the link.

#assistive technology services #assistive technology solutions #assistive technology software development #assistive technology for the blind #assistive technology devices and services #software development

Ian  Robinson

Ian Robinson


An Introduction To Data Connectivity and Data Connectivity Solutions

In this article, we discuss facts about data connectivity, the related concepts, its benefits, as well as a discussion on some data connectivity solutions.


In today’s world, data is the crux of major business decisions used by organizations all over the world. As such, it is imperative that the organizations have access to the right data and be able to analyze and make business decisions proactively. This article talks about data connectivity, the related concepts, its benefits, as well as a discussion on some data connectivity solutions.

#big data #data connectivity #data connectivity solutions #connectivity

Onwards and Upwards: The rise of voice technology and how brands can benefits from it

Voice technology is a method of using the technology for authentic search results which are built on the base of the interaction with Artificial Intelligence (AI), User Experience (UX), and Internet of Things (IoT).

It will become essentially important for the organizations to do full-throttle testing before implementing the voice technology as it demands a whole new working procedure. If the testing process is done correctly, the voice assistant apps will open a whole new horizon for investors and upscale the expansion of your business. It’s all about seizing the opportunities for the business firms in order to skyrocket their business expansion and use voice technology optimally.

Read More: Onwards and Upwards: The rise of voice technology and how brands can benefit from it

#app development companies #personalized user experience #voice assistant apps #voice technology #voice search #enhance user experience